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
watchOS App SwiftUI
Search
notoroid
May 27, 2020
Programming
0
430
watchOS App SwiftUI
WWDC2019でSwiftUI が発表されて10ヶ月目にして当初目的を達成した話。iOS App、Today Extension、watchOS でSwiftUI を使ってみる&利点欠点。
notoroid
May 27, 2020
Tweet
Share
More Decks by notoroid
See All by notoroid
AppIntentsの用途 - AppleのGPT元年
notoroid
1
96
Privacy manifests - Appleと開発コミュニティ
notoroid
1
150
とっさのAutoLayout - Rewind autolayout
notoroid
0
45
UVC(USB video class)と マルチプラットフォーム - UVC support by Apple multiplatform
notoroid
0
230
SwiftUIむけに 整理された状態監視 Observation
notoroid
0
580
よせあつめSwift - Swift5.9
notoroid
1
590
Transferable - SwiftUI ドキュメントアプリ
notoroid
2
350
整理されたSwift言語仕様 - Swift 5.7 any/some
notoroid
1
900
Swift Concurrencyの 尻尾を掴め ~ 並行処理を受け入れる取っ掛かり
notoroid
1
410
Other Decks in Programming
See All in Programming
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
260
What you can do with Ruby on WebAssembly
kateinoigakukun
0
150
GraphQL あるいは React における自律的なデータ取得について
quramy
11
2.8k
実践!難読化ガイド
mitchan
0
120
オートマトン学習しろ / Do automata learning
makenowjust
3
120
LangGraphでのHuman-in-the-Loopの実装
os1ma
3
990
Why Prism?
kddnewton
4
1.7k
マルチモジュールにおけるテスト最適化
fxwx23
0
200
私のEbitengineの第一歩
qt_luigi
0
440
意外とフォントが大事だった話 / Font Issues on Internationalization
fumi23
0
100
Kotlin 2.0 and Beyond
antonarhipov
2
150
GraphQLの魅力を引き出すAndroidクライアント実装
morux2
3
310
Featured
See All Featured
It's Worth the Effort
3n
182
27k
No one is an island. Learnings from fostering a developers community.
thoeni
18
2.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
36
1.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
230
130k
Docker and Python
trallard
39
3k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Building a Modern Day E-commerce SEO Strategy
aleyda
35
6.8k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
109
6.9k
Infographics Made Easy
chrislema
239
18k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
Transcript
XBUDI04"QQ4XJGU6* ϲ݄ͷཱྀ࿏
ࣗݾհ
ೳొཁ !OPUPSPJE w J04ΞϓϦ։ൃऀ w ߸͍Γ·͢ిࢉاը w !OPUPSPJE w !JSJNBTV
w ࠷ۙͷಈ w +".4UBDLௐࠪத
ॆిใࠂ͞Μ #BUUFSFDFJWFS w όοςϦʔϞχλʔ ϢʔςΟϦςΟʔ w ࠷େ ࣮ػ ϦϞʔτ
w ख࣋ͪͷJ1IPOF͔Βଞʹ͍࣋ͬͯΔ J1IPOF J1BEͳͲͷػثͷόοςϦʔঢ়ଶ֬ ೝՄೳ w ࣗʹ͋ΔJ1IPOFͷόοςϦʔঢ়ଶ֬ೝՄ ೳ
ॆిใࠂ͞Μ #BUUFSFDFJWFS w </FX>ॆిྃ௨ w ॆిྃΛ͑ͯ͘ΕΔ௨ΛՃɻ w ҎԼʹࢦఆ͢Δ͜ͱͰόοςϦʔ ΛέΞ͢Δ͜ͱ͕Մೳ w
Կ͔ͱߴ͍J1IPOFΛ࣋ͪͤ͞Δͷʹ༗ ༻
͢͜ͱ w ࣮ݱͰ͖ͨ͜ͱ w XBUDI04֓ཁ w J1IPOFʙ"QQMF8BUDIσʔλୡͷ֓ཁ w 4XJGU6*ͷະདྷ
͞ͳ͍͜ͱ w 4XJGU6*ͷৄࡉ w 8BUDI,JUͷৄࡉ࣮ w 8BUDI$POOFDUJWJUZΛͬͨσʔλ௨৴ํ๏ w XBUDI04্Ͱ4XJGU6*Λ͏ࡍͷ w
$PNQMJDBUJPOT
ϝΠϯετϦʔϜͷΞϓϦ։ൃ ʹΔ͘Δͷ͔
4XJGU6*ͱ͍͏ະ։ͷδϟϯάϧʹਐΜ ͩ୳ݕୂ͞ΒͳΔԞɺXBUDI04Ξϓ ϦʹΛ౿Έग़ͯ͠͠·ͬͨɻ
࣍ճ 4XJGU6*ऴᖼ
w ࣍ճ༧ࠂ w ΞϓϦʹ͍ͭͯ w XBUDI04։ൃͷݱࡏ w 4XJGU6*ͳίʔσΟϯάελΠϧͰXBUDI04։ൃ w
XBUDI04։ൃͷࡉ͔͍ w 4XJGU6*ͷऴᖼ w ·ͱΊ
ΞϓϦʹ͍ͭͯ
ॆిใࠂ͞Μ#BUUFSFDFJWFS w ݄ʹϦϦʔε w 4XJGU6*ϕʔεͷΞϓϦ w ݄ʹ"QQMF8BUDIରԠ w "QQMFରԠͰॳతୡ w
88%$͔Βϲ݄ޙ
λοϓͰΓସ͑
%λονͰϝχϡʔදࣔ
$PNQMJDBUJPOରԠ
8BUDIܦ༝ͰJ1IPOFͷ όοςϦʔใ֬ೝՄೳʹ
ԶಘΞϓϦ 4XJGU6*ػೳͷ$BUBMPHΞϓϦ
XBUDI04։ൃͷݱࡏ
"QQMF8BUDIਓؾ͕ͩ ։ൃͷͨΊͷXBUDI04Ͳ͏ͳͷ
XBUDI04։ൃͷݱࡏ w 'PVOEBUJPO w 8BUDI$POOFDUJWJUZ w 8BUDI,JUGSBNFXPSL w $MPDL,JU w
4XJGU6* w 4DFOF,JU w 4QSJUF,JU "QQMFͷجຊػೳ XBUDI04༻ ΫϩεϓϥοτϑΥʔϜ J04XBUDI04ؒଓ༻
XBUDI04։ൃͷݱࡏ 8BUDI$POOFDUJWJUZ 8BUDI,JUGSBNFXPSL $MPDL,JU ࣌ܭ൫
XBUDI04։ൃͷݱࡏ 8BUDI$POOFDUJWJUZ 8BUDI,JUGSBNFXPSL $MPDL,JU XBUDI04 J04 wJ04ؒ௨৴ wXBUDI04ؒ௨৴ w6*ΤϨϝϯτ wΧελϚΠζ௨
w࣌ܭ൫
8BUDI$POOFDUJWJUZͷػೳ 04ผ J04 XBUDI04 "QQMF8BUDIαϙʔτՄೳఆ JT4VQQPSUFE ಉ͡ ಉ͡ %FMFHBUF 04͚ͩͷΠϕϯτ͕ଘࡏ
04͚ͩͷΠϕϯτ͕ଘࡏ ༗ޮԽ BDUJWBUF ಉ͡ ಉ͡ ϝοηʔδૹ৴ͷԠ όοΫάϥϯυͰԠରՄೳ ϑΥΞάϥϯυͰԠରՄೳ ϢʔβʔใϑΝΠϧసૹ ૹड৴Մೳ όοΫάϥϯυԠରՄೳ ૹड৴Մೳ खಈͰόοΫάϥϯυԠରՄೳ ॳظԽใ ૹड৴Մೳ XBUDI04ଆͷૹ৴ͷΈ ૹड৴Մೳ XBUDI04ىಈ࣌ͷΈಡΈऔΓ
8BUDI$POOFDUJWJUZͷ௨৴ྨ όοάϥϯυͰߋ৽VTFS*OGP5SBOTGFS wΞϓϦૹ৴͢Δ͚ͩɺ͋ͱ04͕໘ΛΈΔ 8BUDI͕ϑΥΞάϥϯυͷΈ༗༻ w8BUDI͕ϝοηʔδૹ৴͢ΔͱଈϨεϙϯε͕ฦͬͯ͘Δ J1IPOFɺ"QQMF8BUDIํͱϑΥΞάϥϯυ wJ1IPOF 8BUDIͱʹϝοηʔδૹ৴͢ΔͱଈϨεϙϯε͕ฦͬͯ͘Δ
8BUDI$POOFDUJWJUZ ෳͷ௨৴ํ๏͕͋ͬͯԿΛ ͍͍͔͔ͬͯΒͳ͍
8BUDI$POOFDUJWJUZ ෳͷ௨৴ํ๏͕͋ͬͯԿΛ ͍͍͔͔ͬͯΓʹ͍͘
༻్ผʹJ1IPOFͱ "QQMF8BUDIͷओै͕ؔมΘΔ ओैؔ͝ͱʹػೳΛΈ߹ΘͤΔ
ओैผ8BUDI$POOFDUJWJUZར༻ํ๏ ॳظԽใ "QQMJDBUJPO$POUFYU ϢʔβʔใϑΝΠϧసૹ VTFS*OGPUSBOTGFS ϝοηʔδૹ৴ TFOE.FTTBHF 8BUDIʹ ॳظঢ়ଶΛ͢
˓ ʔ ʔ J1IPOFΞϓϦ্ͷใΛ 8BUDIʹૹΔ ʔ ˓ ʔ 8BUDIΞϓϦ͔Β J1IPOFΛૢ࡞͢Δ ʔ ʔ ˓ J1IPOFɺ8BUDIΞϓϦΛ ૬ޓʹݟͳ͕Β֬ೝ͢Δ ʔ ʔ ˓
ओैผ8BUDI$POOFDUJWJUZར༻ํ๏ ॳظԽใ "QQMJDBUJPO$POUFYU ϢʔβʔใϑΝΠϧసૹ VTFS*OGPUSBOTGFS ϝοηʔδૹ৴ TFOE.FTTBHF 8BUDIʹ ॳظঢ়ଶΛ͢
˓ ʔ ʔ ఱؾަ௨ใΛ 8BUDIʹө͢Δ ʔ ˓ ʔ ΧϝϥΞϓϦͰɺ 8BUDIԕִγϟολʔػೳ ʔ ʔ ˓ J1IPOFΞϓϦ্Ͱɺ 8BUDIΞϓϦͷදࣔઃఆ Λଈ࠲ʹө ʔ ʔ ˓
XBUDI04։ൃ Y w XBUDI04ΞϓϦࣗମ֓ཁใɺ6*Ϧιʔε͕ຊମ w ΞϓϦͱͯ͠ೝ͍ࣝͯ͠ΔͷFYUFOTJPO্Ͱ࣮ݱ͞Ε͍ͯΔ w ୯ಠͰωοτϫʔΫ௨৴Մೳ͕ͩɺλεΫͰཧ͞ΕΔ w XBUDI04Ͱ4XJGU6*͕͑Δ͜ͱ͕େ͖ͳΞοϓσʔτ
w ࣍ͷϝδϟʔΞοϓσʔτͰԿ͔͋Δ͔
4XJGU6*ͳίʔσΟϯάελΠϧͰ XBUDI04։ൃ
ΞϓϦͰ4XJGU6*Λ࠾༻͢Δͱ XBUDI04ͷ։ൃ͕֨ஈʹָʹͳΔ
4XJGU6*ͷΞϓϦͰͷ େ·͔ͳಈ͖
None
ΞϓϦͷσʔλߏΛ ࢹ6*ʹө͢Δ
None
None
ˠ"QQMF8BUDI J1IPOFˡ J1IPOF͔Β #BUUFSZใΛ సૹ ಉ͡ߏମ
ಉ͡σʔλߏ͕ಉ͡ͳΒɺ σʔλΛసૹͰ͖Ε 4XJGU6*ͰදࣔΛ࠶ݱͰ͖Δ
XBUDI04։ൃͷࡉ͔͍
XBUDI04։ൃͷࡉ͔͍ w BWBJMBCMFͱϓϩδΣΫτઃఆͷλʔήοτ w BWBJMBCMFίʔυதͷॲཧΓ͚ w λʔήοτͰιʔεϑΝΠϧͰϏϧυରΓ͚ w DPNQMJDBUJPOͷߋ৽ w
J04ଆͰ$PNQMJDBUJPOTΛߋ৽ϦΫΤετՄೳ ճ੍ݶ͋Γ w ΞϓϦਃ w ϨϏϡϫʔ͔Β࣮ػͰͷಈ࡞ϜʔϏʔΛఏग़ʹରԠ
ղܾͰ͖͍ͯͳ͍͜ͱ w ಛఆͷ$MPDL'BDFͰ$PNQMJDBUJPOͷදࣔө͕͍ w ΠϯϑΥάϥϑϞδϡϥʔͰͷߋ৽͕͍ݪҼ͕Θ͔Βͳ͍
4XJGU6*ͷऴᖼ
4XJGU6*ऴΘΔɻ
ͳͥͳΒ
4XJGU6* Ծ ͕ग़ͯ͘Δ͔Β
4XJGU6* Ծ ͷ վળཁͱ͔Λڍ͛ͯΈΔ
4XJGU6*վળͯ͠ཉ͍͠ w .PEBM6*ͷੜλΠϛϯά͕ଟॏͰൃੜ͢Δ͜ͱ͕͋Δ w طଘ6*,JUͷੜλΠϛϯά͕ଟॏͰൃੜ͢Δ͜ͱ͕͋Δ w ৭ $PMPS ͕ࢹରͱͳ͍ͬͯΔͳ͍ w
จࣈྻɺɺ#PPM͕࣮֬ w 1BHF6*ͷରԠ w $PMMFDUJPO7JFXͷରԠ
4XJGU6*ΫϩεϓϥοτϑΥʔϜલఏͳͷͰ "QQMF͕༻ҙͯ͠Δ࣍ͷҰख αϙʔτͯ͘͠ΕΔՄೳੑେ
·ͱΊ w 4XJGU6*Λशಘ͢ΔͱΞϓϦͷԣల։ָ͕Ͱ͢ w XBUDI04ͷରԠ࣌ʹز͔ͭͷ͕ඞཁͰ͢ w 4XJGU6*͕ऴΘΓɻ4XJGU6*͕ͬͯ͘Δ w ։ൃपΓઑͬͨํʹશৼΓத