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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Cychow
May 18, 2022
Programming
0
380
【Qiita Night】新卒エンジニアによるSwift6与太予想
Cychow
May 18, 2022
Tweet
Share
More Decks by Cychow
See All by Cychow
【iOSDC Japan 2025】ノーコードアプリプラットフォームを支える Server-Driven UI 〜Block UIアーキテクチャの設計と実装〜
eiji127
1
730
【Sansan×ヤプリ×ディップ 3社合同モバイル勉強会 第2回】チ。-Chart3Dの挙動について-
eiji127
0
47
【Sansan×ヤプリ×ディップモバイル勉強会#1】Accessibility入門! VoiceOverによる読み上げ機能を利用するためには
eiji127
0
10
【Ebisu.mobile#3】バイトルアプリへのSwift Concurrency導入とその効果
eiji127
3
410
Other Decks in Programming
See All in Programming
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
170
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
120
モダンOBSプラグイン開発
umireon
0
170
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
150
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.1k
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
320
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
410
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
230
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.1k
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
470
Windows on Ryzen and I
seosoft
0
350
Fundamentals of Software Engineering In the Age of AI
therealdanvega
2
290
Featured
See All Featured
Code Review Best Practice
trishagee
74
20k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
AI: The stuff that nobody shows you
jnunemaker
PRO
3
460
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
230
The untapped power of vector embeddings
frankvandijk
2
1.6k
A designer walks into a library…
pauljervisheath
210
24k
Utilizing Notion as your number one productivity tool
mfonobong
4
270
My Coaching Mixtape
mlcsv
0
83
Game over? The fight for quality and originality in the time of robots
wayneb77
1
140
Six Lessons from altMBA
skipperchong
29
4.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ΤϯδχΞઈࢍืूதʂʂʂ