Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
【Qiita Night】新卒エンジニアによるSwift6与太予想
Search
Cychow
May 18, 2022
Programming
390
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【Qiita Night】新卒エンジニアによるSwift6与太予想
Cychow
May 18, 2022
More Decks by Cychow
See All by Cychow
【iOSDC Japan 2025】ノーコードアプリプラットフォームを支える Server-Driven UI 〜Block UIアーキテクチャの設計と実装〜
eiji127
1
880
【Sansan×ヤプリ×ディップ 3社合同モバイル勉強会 第2回】チ。-Chart3Dの挙動について-
eiji127
0
57
【Sansan×ヤプリ×ディップモバイル勉強会#1】Accessibility入門! VoiceOverによる読み上げ機能を利用するためには
eiji127
0
17
【Ebisu.mobile#3】バイトルアプリへのSwift Concurrency導入とその効果
eiji127
3
420
Other Decks in Programming
See All in Programming
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
780
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
300
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
280
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
600
Agentic UI
manfredsteyer
PRO
0
200
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
580
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
170
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
400
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
14
7.1k
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
JavaDoc 再入門
nagise
1
420
AI時代のUIはどこへ行く?その2!
yusukebe
22
7.5k
Featured
See All Featured
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
240
We Have a Design System, Now What?
morganepeng
55
8.2k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
420
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
540
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
380
Technical Leadership for Architectural Decision Making
baasie
3
420
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Transcript
৽ଔΤϯδχΞʹΑΔSwift 6༩ଠ༧ σΟοϓגࣜձࣾ iOSΤϯδχΞ ന ӥ࢘
ࣗݾհ 🏢ɿσΟοϓגࣜձࣾ 22৽ଔΤϯδχΞ ♨ɿԹઘɾαφ͕େ͖Ͱ͢ʂ 📱ɿQiita -> @Cychow, Twitter -> @cychow_app
͍ͨ͜͠ͱ ɾ(ݱ࣮తͳͱ͜Ζͩͱ) ඇಉظॲཧͱδΣωϦΫεେ͖͘ Ξοϓσʔτ͕ೖΓͦ͏ɻ ɾϝλόʔεͩ͠ɺARKitؤுͬͯ͘Εͦ͏ʂ ɾαʔόαΠυSwiftຊ֨తʹ͘Δͧʂ
Swift6ͷํ
On the road to Swift6 ˌ1ɿ SwiftιϑτΣΞΤίγεςϜͷΛՃ͢Δ ˌ2ɿૉΒ͍͠։ൃମݧΛ࡞͢Δ ˌ3ɿϢʔβʔʹྗΛ༩͑Δݴޠͷํੑʹࢿ͢Δ https://forums.swift.org/t/on-the-road-to-swift-6/32862
ˌ1ɿ SwiftιϑτΣΞΤίγεςϜͷΛՃ͢Δ ɾSwiftͷՄ༻ੑΛ֦େ͠ɺͨ͘͞ΜͷਓʹӨڹΛ༩͍͑ͨɻ ɾϓϥοτϑΥʔϜ૿͢ / Πϯετʔϧͱల։ͷํ๏ͷվળ / ΫϩεϓϥοτϑΥʔϜͷαϙʔτ/etc…
ˌ2ɿૉΒ͍͠։ൃମݧΛ࡞͢Δ ɾΑΓߴͳϏϧυ ɾΑΓ༗ӹͰਖ਼֬ͳஅ ɾϨεϙϯγϒͳίʔυิ ɾetc…
ˌ3ɿϢʔβʔʹྗΛ༩͑Δݴޠͷํੑʹࢿ͢Δ ɾSwiftΛΑΓڧྗͳϓϩάϥϛϯάݴޠʹ͢Δɻ ɾՄมࢠҾδΣωϦοΫ / APIߏஙαϙʔτ / DSLػೳ / ಉ࣮࣌ߦੑͷڧԽ /
etc…
ͦͷଞॾʑ
Swift6ͷ༩ଠ༧
ଘࡏܕ SE-0341: Opaque Parameter Declarations ɾSwift5.7ͰδΣωϦΫεΛҾʹ༻͍ͨؔΛ؆ܿʹॻ͚ΔΑ͏ʹͳͬͨɻ
ϦόʔεδΣωϦΫε ɾΓʹδΣωϦΫεͷ֓೦ΛऔΓೖΕ͍ͨɻ ɾΓ͕۩ମత͗ͯ͢ಉ͡Α͏ͳ࣮͕૿͑Δɻ SE-0244: Opaque Result Type
ϦόʔεδΣωϦΫε SE-0244: Opaque Result Type ɾOpaque Result TypeͷsomeͰ۩ମతͳܕΛӅṭͰ͖Δɻ Ұ෦ͷProtocolʹద༻͞Ε͍ͯͳ͍…ɻ
ϦόʔεδΣωϦΫε ɾOpaque Result TypeͷsomeͰ۩ମతͳܕΛӅṭͰ͖Δɻ Ұ෦ͷProtocolʹద༻͞Ε͍ͯͳ͍…ɻ ↓ ͯ͢ͷϓϩτίϧ͕ϦόʔεδΣωϦΫεʹద༻Ͱ͖ΔΑ͏ݕ౼தʂ (Swift6Ͱ෦తʹ؇͞ΕΔ͔ʁ) SE-0244: Opaque
Result Type
async / await ɾSwift5.5͔ΒConcurrencyͷػೳͱͯ͠ొͨ͠ɻ ɾඇಉظॲཧ / ฒߦॲཧͷίʔυΛ؆ܿʹهड़Ͱ͖ΔΑ͏ʹͳͬͨɻ
async / await ɾcompletionͰͳ͘ΓͰ݁ՌΛͤΔɻ
async / await ɾΤϥʔΛthrow͢Δ͜ͱͰɺΤϥʔϋϯυϦϯάΛڧ੍Ͱ͖Δɻ
async / await ɾSwift6Ͱ@asyncHandlerͱ͍͏Ξϊςʔγϣϯ͕Ճ͞ΕΔɻ ɾIBActionͱ͔ʹ͚ͭΕTaskͱ͔Ͱғ·ͳͯ͘ྑͦ͞͏ɻ
async / await ɾXcodeͷRefactorͰ؆୯ʹมͰ͖Δɻ( গ͠ո͍͚͠Ͳ) ↓ Swift6͕ఏڙ͞ΕΔࠒʹ͏গ্͠खͬͯ͘͘Εͦ͏ʂ
ARKit ɾGoogleͷARCoreۭؒεΩϟϯͳ͠ͰΞϯΧϦϯάͰ͖ΔΞοϓσʔτ ɾΦϒδΣΫτΛஔ͢Δָ͘͢͝ʹͳΓͦ͏…🤔
ARKit ɾARKit࠷ۙ੩͔… ɾMapKitͱ࿈ಈͤ͞Δ͘Β͍ͷ͜ͱΓ͔Ͷͳ͍…ʂʁ
(ઢ) Xcode Cloud ɾΫϥυͷXcodeͰϏϧυςετΛࣗಈ࣮ߦͰ͖Δɻ ɾTestFlightͱͷ࿈ܞͳͲͬͯ͘ΕΔɻ
(ઢ) Xcode Cloud ɾ(͔֬)ൃද࣌ʹ1Ҏʹຊ֨తͳެ։Λ༧ఆ͍ͯ͠Δͱड़͍ͯͨɻ ɾϦϦʔεςετ͕؆୯ʹͳͬͨΓͦ͠͏ɻ
(ઢ) Xcodeͷόʔδϣϯཧ ɾxcodesͱ͍͏πʔϧͰXcodeͷཧ͕Ͱ͖Δ͚Ͳɺ ެࣜͰग़དྷΔΑ͏ʹͳͬͯ͘ΕΔͱخ͍͠ʂʂʂ
(ઢ) αʔόαΠυSwiftຊ֨࢝ಈʂʁʁ ɾLinuxʹରԠ͢Δͬͯݴͬͯͨؾ͕͢Δɻ ɾαʔόαΠυSwiftຊ֨తʹ࢝ಈ͢ΔͷͰʁ എܠͱಉԽͪ͠Όͬͨ…
·ͱΊ ɾ(ݱ࣮తͳͱ͜Ζͩͱ) ඇಉظॲཧͱδΣωϦΫεେ͖͘ Ξοϓσʔτ͕ೖΓͦ͏ɻ ɾϝλόʔεͳͷͰɺARKitؤுͬͯ΄͍͠ʂ ɾαʔόαΠυSwiftຊ֨తʹ͘Δͧʂ
iOSΤϯδχΞઈࢍืूதʂʂʂ