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
260
SwiftUIの大地を駆け巡るための仕組みを作る
"土に根をおろし、風とともに生きよう。種とともに冬を越え、鳥とともに春を歌おう"
Ryoichi Izumita
May 20, 2021
Tweet
Share
More Decks by Ryoichi Izumita
See All by Ryoichi Izumita
モバイル開発における共通性・可変性分析入門
rizumita
0
76
Flutterアプリを生成AIで生成する勘所
rizumita
0
1.2k
FlutterアプリのテストでBuilderパターンを活用しよう
rizumita
0
650
VIPERアーキテクチャ
rizumita
1
810
FRPを使いはじめて3年が過ぎました。
rizumita
4
1.4k
とあるプログラマのリモートワーク
rizumita
0
370
JavaScript for Automation
rizumita
1
260
Other Decks in Programming
See All in Programming
猫と暮らす Google Nest Cam生活🐈 / WebRTC with Google Nest Cam
yutailang0119
0
160
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
290
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
1k
効率的な開発手段として VRTを活用する
ishkawa
0
150
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
190
すべてのコンテキストを、 ユーザー価値に変える
applism118
3
1.4k
AI Agent 時代のソフトウェア開発を支える AWS Cloud Development Kit (CDK)
konokenj
3
280
オンコール⼊⾨〜ページャーが鳴る前に、あなたが備えられること〜 / Before The Pager Rings
yktakaha4
0
140
GPUを計算資源として使おう!
primenumber
1
170
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
780
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
2.2k
テスト駆動Kaggle
isax1015
1
430
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
77
9.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Optimizing for Happiness
mojombo
379
70k
A Tale of Four Properties
chriscoyier
160
23k
Designing Experiences People Love
moore
142
24k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
Typedesign – Prime Four
hannesfritz
42
2.7k
Automating Front-end Workflow
addyosmani
1370
200k
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Λॻ͍͍ͯͩ͘͞ɻ
͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ