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
SwiftUIの大地を駆け巡るための仕組みを作る
Search
Ryoichi Izumita
May 20, 2021
Programming
0
220
SwiftUIの大地を駆け巡るための仕組みを作る
"土に根をおろし、風とともに生きよう。種とともに冬を越え、鳥とともに春を歌おう"
Ryoichi Izumita
May 20, 2021
Tweet
Share
More Decks by Ryoichi Izumita
See All by Ryoichi Izumita
Flutterアプリを生成AIで生成する勘所
rizumita
0
130
FlutterアプリのテストでBuilderパターンを活用しよう
rizumita
0
320
VIPERアーキテクチャ
rizumita
1
740
FRPを使いはじめて3年が過ぎました。
rizumita
4
1.3k
とあるプログラマのリモートワーク
rizumita
0
350
JavaScript for Automation
rizumita
1
250
Other Decks in Programming
See All in Programming
Google Sign-inの移行から始めるCredential Manager活用
clockvoid
0
440
AndroidアプリのUIバリエーションをあの手この手で確認する / Check UI variations of Android apps by various means
tkmnzm
1
200
オートマトン学習しろ / Do automata learning
makenowjust
3
130
Kotlin 2.0 and Beyond
antonarhipov
2
150
Modern Angular with the NGRX Signal Store New Rules for Your Architecture @BASTA! 2024 in Mainz
manfredsteyer
PRO
0
180
GraphQL あるいは React における自律的なデータ取得について
quramy
11
3k
LangChainでWebサイトの内容取得やGitHubソースコード取得
shukob
0
160
Ebitengineの1vs1ゲーム WebRTCの活用
ponyo877
0
380
大公開!iOS開発の悩みトップ5 〜iOSDC Japan 2024〜
ryunakayama
0
200
Hermes: Better Performance with Bytecode Translation (React Universe 2024)
tmikov2023
0
110
上手に付き合うコンポーネントテスト
quramy
2
680
The Sequel to a Dream of Ruby Parser's Grammar
ydah
1
220
Featured
See All Featured
Scaling GitHub
holman
458
140k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
Being A Developer After 40
akosma
84
590k
Designing for humans not robots
tammielis
248
25k
Side Projects
sachag
451
42k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
158
15k
Happy Clients
brianwarren
96
6.6k
Build your cross-platform service in a week with App Engine
jlugia
228
18k
Infographics Made Easy
chrislema
239
18k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
23
1.7k
Building Applications with DynamoDB
mza
90
6k
Transcript
SwiftUIͷେΛۦ͚८ΔͨΊͷΈΛ࡞Δ ࣗࣾαʔϏε։ൃͷגࣜձࣾελσΟετ × ڞύʔτφʔͷגࣜձࣾΏΊΈ ߹ಉษڧձʂ Γͣ / ઘాྖҰ /
@rizumita
ϓϩϑΟʔϧ • ݝ҆ಶࢢࡏॅ • 43ࡀ • גࣜձࣾΏΊΈͰiOSςοΫϦʔυ݉ϦʔυΤϯδχΞ • 19ࡀͰObjective-CΛֶͼͦͷޙWebObjectsΛ͔͋ͭ͏ •
iOSΞϓϦ։ൃiPhone 3GSΛߪೖͨ࣌͠ʹ։࢝
SwiftUIͰ͞Ε͍ͯΔΞʔΩςΫνϟύλʔϯ • MVVM • The Composable Architecture • Elm Architecture
• Redux MVVMҎ֎ͰؔܕΞʔΩςΫνϟύλʔϯ͕ಛʹ͞Ε͓ͯΓɺ ͦΕΒSwiftUIͱ͍͏ܥͱผݸͷؔܕͷܥΛ࡞ΓɺೋͭͷܥΛܨ͍͛ͯΔɻ ผݸͷܥͳͷͰSwiftUIͷView֊ͷதͰมԽ͢ΔEnvironmentEnvironmentObjectΛޮՌతʹར ༻͢Δࣄ͕Ͱ͖ͳ͍͜ͱ͕ଟ͍ɻ
ࢲʹɺͦΕΒఱۭ͔Β SwiftUIͱ͍͏େΛ ίϯτϩʔϧ͍ͯ͠ΔΑ͏ʹࢥ͑Δɻ
ඬྲྀதͷΨϦϰΝʔͱ ૺ۰͢Δڊେͳʮۭඈ Ϳౡʯϥϐϡʔλ JɾJɾάϥϯϰΟϧ
–ΰϯυΞͷ୩ͷՎ “ʹࠜΛ͓Ζ͠ɺ෩ͱͱʹੜ͖Α͏ɻ छͱͱʹౙΛӽ͑ɺௗͱͱʹय़ΛՎ͓͏”
SwiftUIͷେΛۦ͚८ΔͨΊʹ • γεςϜʹجͮ͘ΈͰ࣮͢Δͷ͕جຊɻ • SwiftUIͷView֊ʹڥ͕Έࠐ·Ε͍ͯΔɻͭ·ΓView֊ͦ͜ ͕ΞϓϦͷϕʔεͱ͍͑Δɻ • ͔͠͠View͕ModelϨΠϠʔʹґଘ͢Δͱ͕ൃੜ͢Δɻ • ViewͦͷڥͱModelΛܨ͙ॴ͕ඞཁͱͳΔɻ
Sede SwiftUI༻ͷViewͱModelΛόΠϯυ͢ΔͨΊͷϥΠϒϥϦ ϧʔςΟϯάػೳ https://github.com/rizumita/Sede
͍ํͱϥΠϒϥϦͷ࣮Λݟ͍͖ͯͨͩ·͢ɻ https://github.com/rizumita/Sede
͓ΘΓʹ • ඪ४ͷڥʹଇ࣮͕ͬͨجຊͩͱߟ͍͑ͯΔɻ • ؔܕΞʔΩςΫνϟύλʔϯͳͲͷผͷܥͷΈྑ͍͕ɺ·ͣ SwiftUIͱ͍͏ϑϨʔϜϫʔΫʹଇͬͨΈΛݕ౼͍ͨ͠ɻ • ͜ͷϥΠϒϥϦ࣮ݧతͳ࣮Ͱ͋ΓɺΑΓΑ͍࣮Λ୳Δඞཁ͕͋ Δɻ •
ΞΠσΞ͕͋ΕIssueΛॻ͍͍ͯͩ͘͞ɻ
͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ