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
danger-swift-kantoku
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Elvis Shi
February 22, 2022
Programming
630
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
danger-swift-kantoku
Elvis Shi
February 22, 2022
More Decks by Elvis Shi
See All by Elvis Shi
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
470
ゼロから始めるPreferenceの実装 / Let's implement Preferences from scratch
lovee
0
150
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
390
個人アプリを2年ぶりにアプデしたから褒めて / I just updated my personal app, praise me!
lovee
0
740
How did I build an Open-Source SwiftUI Toast Library
lovee
1
170
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
1.3k
SwiftUIで二重スクロール作ってみた / When I tried to make a dual-scroll-ish view in SwiftUI
lovee
1
380
Observation のあれこれ / A brief introduction about Observation
lovee
3
440
ChatGPT 時代の勉強 / Learning under ChatGPT era
lovee
27
9k
Other Decks in Programming
See All in Programming
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
330
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
12
4.6k
ローカルLLMでどこまでコードが書けるか -縮小版 / How much code can be written on a local LLM Shortened
kishida
2
160
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
330
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
230
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
430
AI時代のUIはどこへ行く?その2!
yusukebe
22
7.7k
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
780
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
220
Strategic Design in the Frontend: Moduliths & Micro Frontends @DDDEurope
manfredsteyer
PRO
0
140
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
240
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
620
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.7k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Git: the NoSQL Database
bkeepers
PRO
432
67k
WCS-LA-2024
lcolladotor
0
670
Odyssey Design
rkendrick25
PRO
2
720
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
450
Become a Pro
speakerdeck
PRO
31
6k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
340
Statistics for Hackers
jakevdp
799
230k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
Transcript
9DPEFͷϏϧυϫʔχϯάΛ 13ʹใࠂ͢Δ%BOHFS4XJGUϓϥάΠϯ͕ 3VCZπʔϧͷग़ྗʹґଘͯ͠Δ͔Β Զ͕৽͍͠ͷΛ࡞ͬͯΔ ஶɿܙྤ ֆ˞ɿ͍Β͢ͱ ˞ΠϥετૉࡐҾ༻Ͱ͢ɻ
4XJGUѪձจݿWPM
ʲୈרʳ 13ͷ%BOHFSใࠂʹ 9DPEFͷϏϧυϫʔχϯά ཉ͍͠ΑͶʁ
ʲୈষʳ%BOHFSͬͯɺͳʔʹʁ w ϦϙδτϦʔΛ੩తݕࠪ͢Δπʔϧ w νΣοΫ͍߲ͨ͠Λ%BOHFS fi MF ͱ͍͏εΫϦϓτͰॻ͚৭ʑ
ػցతʹνΣοΫͯ͘͠ΕΔ w ͞·͟·ͳϓϥάΠϯͰ͍ΖΜͳ ͜ͱ͕Ͱ͖Δ w 4XJGUͰεΫϦϓτॻ͚Δ%BOHFS 4XJGU͋Δ w IUUQTHJUIVCDPNEBOHFSTXJGU
ʲୈষʳ9DPEFͷϏϧυϫʔχϯάใࠂʁ w 9DPEF͕Ϗϧυ࣌ʹ༷ʑͳϫʔχϯ άΤϥʔΛు͖ग़ͯ͘͠ΕΔ w %FQSFDBUFE3FOBNFใ͚ͩ Ͱͳ͘ϓϩδΣΫτઃఆͳͲͷ ϫʔχϯά͋Δ w 4XJGU-JOU͕͋ΕͦΕͷϫʔχ
ϯάΤϥʔు͖ग़ͯ͘͠ΕΔ w ͜Μͳศརͳͷવ13ͷίϝ ϯτͰཉ͍͠ΑͶʁʁ w ࣮ͦΜͳϓϥάΠϯ͕طʹ͋Δ
ʲୈষʳEBOHFSTXJGUYDPEFTVNNBSZʁ w 9DPEFͷϏϧυ֓ཁΛरͬͯ͘ΕΔ ϓϥάΠϯ w ϫʔχϯάΤϥʔ͚ͩͰͳ͘ɺ ςετͷ݁Ռίϝϯτߘͯ͠ ͘ΕΔ w ͨͩ͠YDQSFUUZٴͼYDQSFUUZKTPO
GPSNBUUFSͷग़ྗ͕ඞཁ w ͜ΕΒͷπʔϧͷΠϯετʔϧʹ 3VCZͷύοέʔδϚωʔδϟʔ (FN#VOEMFS͕ඞཁ
3VCZґଘݏͩʂ
ʲୈרʳ ։ൃڥ͔Β 3VCZΛഉআ͍ͨ͠ΑͶʁ
ʲୈষʳ3VCZͷݖݶʁ w NBD043VCZڥΛଂ͍ͯ͠Δ w ؆୯ͳ3VCZεΫϦϓτ࡞ͳΒ ͙͢Ͱ͖ΔͷͰඇৗʹָ w ͱ͜Ζ͕(FNͰԿ͔֎෦ύο έʔδΛೖΕΑ͏ͱ͢Δͱ࣮ߦऀ ͷݖݶͱΠϯετʔϧઌͷύεͷ
ݖݶ͕߹Θͳ͍ͨΊ͙ࣦ͢ഊ͢Δ w ܦݧऀͳΒSCFOWͷಋೖͰղܾͰ͖ Δ w ͔͠͠ॳ৺ऀͦΕΛΒͳ͍͠ άά͙ͬͯ͢DINPEͱ͔TVEP ͱ͔ѱຐͷܖΛͤ͞Α͏ͱ͢Δ
ʲୈষʳ͡Ό͋SCFOWಋೖͤ͞Εʁ w SCFOWͷಋೖ)PNFCSFXʹґଘ͢Δ w )PNFCSFXݸਓ։ൃͳΒศརͩ ͕ɺόʔδϣϯࢦఆ͕Ͱ͖ͳ͍ͨ ΊɺΈΜͳͷڥΛ౷Ұ͍ͨ͠νʔ Ϝ։ൃʹෆ͖ w ͞Βʹ)PNFCSFXύοέʔδ
άϩʔόϧڥͰͷΠϯετʔϧʹ ͳΔͷͰɺͦΕԚ͢ͱෳϓϩδΣ Ϋτͷಉ࣌ਐߦʹࢧো͕ग़͔Ͷͳ͍ w SCFOWͷӡ༻TIFMMϓϩϑΝΠϧͷॻ ͖͑ඞཁ w ڥߏஙͷͨΊͷεΫϦϓτࣗମ͕ ॻ͖ʹ͍͘
ʲୈষʳͦΜͳʹ3VCZऔ͍͍ͬͨͷʁ w ͦͦ%BOHFS͔Β%BOHFS4XJGUʹ Ҡߦͨ͠ͷ3VCZΛॻ͖ͨ͘ͳ͍͔Β w ͩͬͯ4XJGU͕ॻ͖͍ͨΜʂ w ΏΊΈͷձࣾੑ࣭తʹάϩʔόϧڥ ΛԚ͢ͷͳΔ͘ආ͚͍ͨ w
ৗʹԿ͔৽ϓϩδΣΫτ͕ੜ·ΕΔ w ҰਓͰෳͷҊ݅ΛݟΔͷͨΓલ w ଐਓԽࢭͷͨΊʹϩʔςʔγϣϯ ඞཁ w ͳͷͰڥߏஙάϩʔόϧͰͳ͘ ֤ϓϩδΣΫτࣗͷϩʔΧϧڥͰ ͍݁ͨ͠
ŷƤƶƐ3VCZ ㆮŧƑƒबŻƦƍŧ
ʲୈרʳ ΤϯδχΞͨΔऀ ͳ͍࡞Δ͔͠ͳ͍ΑͶʁ
ʲୈষʳYDSFTVMUͬͯͷ͕͋ΔΒ͍͠Αʁ w 9DPEF͔Β࠾༻͞ΕͨϏϧυ݁Ռ όϯυϧ w Ϗϧυϩά͚ͩͰͳ͘ɺςετʹ ؔ࿈͢Δใڭ͑ͯ͘ΕΔ w ͨͩ͠தόΠφϦͳͷͰղੳ ͢Δͷʹެࣜπʔϧ͕ඞཁ
w ࣮ຊՈ%BOHFSͷϓϥάΠϯ EBOHFSYDPEF@TVNNBSZطʹ YDSFTVMUʹରԠࡁΈ w ͔͠͠ຊՈ%BOHFS3VCZͩ ͔Βෆ࠾༻
ʲୈষʳͲ͏ͬͯϓϥάΠϯ࡞Δͷʁ w %BOHFS4XJGUͷϓϥάΠϯ੍࡞ͳΒ ܦݧ͋Δ w طʹEBOHFSTXJGUTIPLJ EBOHFSTXJGUFEBΛ࡞ͬͨ w ௨ৗͷϥΠϒϥϦͱಉ͡Α͏ͳײ֮ Ͱ࡞ΕΔ
w %BOHFS4XJGUΛґଘͱͯ͠Ճ w ඞཁͳλΠϛϯάͰ%BOHFS%4- Λݺͼग़͍͍ͤ
ʲୈষʳͲ͏͏ͷʁ w %BOHFS4XJGUͷґଘύοέʔδʹ EBOHFSTXJGULBOUPLVΛՃ w %BOHFS fi MFTXJGUͰEBOHFS LBOUPLVQBSTF9$3FTVMU'JMFΛݺͼ
ग़͠YDSFTVMUϑΝΠϧΛ͢ w Ҏ্
ね?簡単でしょ?
ʲୈרʳ ͜ΜͳૉΒ͍͠ͷ ͬͱৄ͘͠Γ͍ͨΑͶʁ
ʲୈষʳͲͷΑ͏ʹಈ͘ͷʁ w %BOHFS4XJGUΛ$*αʔϏεͰճ͢ ͱɺϓϥάΠϯ͕YDSFTVMUΛύʔε ͢Δ w ϫʔχϯάΤϥʔͳͲͷ*TTVF͕ ͋ͬͨΒ%BOHFS4XJGUΛ௨ͯͦ͡ ͷ··13ϖʔδʹίϝϯτͯ͘͠ ΕΔ
w *TTVFʹϑΝΠϧύεͱߦ͕ඥ ͚͞Εɺ͞ΒʹͦΕ͕ࠓճͷࠩ ൣғͳΒɺ*OMJOFͰίϝϯτ ͯ͘͠ΕΔ w ͦΕҎ֎ͷ*TTVF௨ৗίϝϯτ ͯ͘͠ΕΔ
ʲୈষʳ࣮ʹ͓͍ͯͷ৺ಘͳͲʁ w YDFSTVMUΛࣗྗͰύʔε͢Δͷ ඇৗʹେม w 9$3FTVMU,JUͱ͍͏·͞ʹͦͷҝ ͷϥΠϒϥϦʔ͕͋Δ w ࠶ൃ໌͠ͳ͍͍ͯ͘ंྠ࠶ൃ໌͠
ͳ͍͍ͯ͘Αʢ࠶ؼʣ w ߦࢦఆʹؾΛ͚ͭΔ͖ w YDSFTVMU͔Βऔಘͨ͠ୈԿߦͷ ݁Ռ͔Β͑ͨ݁Ռ w Ұํ(JU)VCͰୈԿߦʹ*OMJOF ίϝϯτ͍͔ͨ࣌͠Β͑ͨ ݁Ռ
ʲୈষʳϏϧυϩά͔͠ରԠ͠ͳ͍ͷʁ w ࠓޙςετϨϙʔτΧόϨοδ ͳͲͷίϝϯτରԠ͍͖͍ͯͨ͠ w ͜ΕΒͷใશͯYDSFTVMU͔Β ؆୯ʹऔಘͰ͖Δ w ΧελϚΠζੑߋʹ্͍͖ͯ͠ ͍ͨ
w ࠩҎ֎ͷϫʔχϯάΛແࢹͨ͠ Γɺϫʔχϯά͕Ұఆ͑Δͱ 13Λࣦഊʹ͢ΔࢦఆೖΕ͍ͨ
Զͨͪͷઓ͍ ͜Ε͔Βͩ
ΩϟϥհɿEBOHFSTXJGULBOUPLV w ຊ࡞ͷओਓެ w ਓ͕ؒಡΊͳ͍όΠφϦϑΝΠϧ ͰΊ͛ͳ͍࠳͚ͳ͍ؤுΓ w ్தͷβɾओਓެΩϟϥ w IUUQTHJUIVCDPNZVNFNJ
JODEBOHFSTXJGULBOUPLV
ΩϟϥհɿZVNFNJJOD w EBOHFSTXJGULBOUPLVͷอޢऀ w ༷ʑͳاۀ͞Μ͔Β։ൃͷ૬ஊΛ ड͚ͯΔ#O#$ͷձࣾΒ͍͠ w ݱࡏJ04ΤϯδχΞΛؚΉ֤৬छ ͷ࠾༻׆ಈΛߦͳ͍ͬͯΔ w
IUUQTXXXZVNFNJDPKQ
ஶऀհɿܙྤ w ͱʹ͔͘4XJGU৴ऀ w ݩ"VUP-BZPVUઈର˓͢Ϛϯ w ݱࡏ3VCZઈର˓͢ϚϯͷงғؾΛ ৢ͠ग़ͯ͠Δʂʁ w UXJUUFSɿ!MPWFF
w RJJUBɿMPWFF w (JU)VCɿFMIPTIJOP