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
Implementing MVVM in 2019
Search
Yuki Yamamoto
July 30, 2019
Technology
2
1.2k
Implementing MVVM in 2019
Slides I used at my talk at Otemachi.swift #04
https://nikkei.connpass.com/event/135908/
Yuki Yamamoto
July 30, 2019
Tweet
Share
More Decks by Yuki Yamamoto
See All by Yuki Yamamoto
Finding alternatives for GraphQL client for iOS
redryerye
0
2.9k
tvOSにちょっと注目してみる
redryerye
0
890
Implement P2P connection and stream your content
redryerye
0
690
Other Decks in Technology
See All in Technology
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
390
Model Mondays S2E02: Model Context Protocol
nitya
0
220
急成長を支える基盤作り〜地道な改善からコツコツと〜 #cre_meetup
stefafafan
0
120
Welcome to the LLM Club
koic
0
170
20250625 Snowflake Summit 2025活用事例 レポート / Nowcast Snowflake Summit 2025 Case Study Report
kkuv
1
310
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
2
540
SalesforceArchitectGroupOsaka#20_CNX'25_Report
atomica7sei
0
160
Observability infrastructure behind the trillion-messages scale Kafka platform
lycorptech_jp
PRO
0
140
“社内”だけで完結していた私が、AWS Community Builder になるまで
nagisa53
1
380
Абьюзим random_bytes(). Фёдор Кулаков, разработчик Lamoda Tech
lamodatech
0
340
BrainPadプログラミングコンテスト記念LT会2025_社内イベント&問題解説
brainpadpr
1
160
セキュリティの民主化は何故必要なのか_AWS WAF 運用の 10 の苦悩から学ぶ
yoh
1
130
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
77
9.4k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
Why Our Code Smells
bkeepers
PRO
337
57k
Navigating Team Friction
lara
187
15k
Designing Experiences People Love
moore
142
24k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Thoughts on Productivity
jonyablonski
69
4.7k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Faster Mobile Websites
deanohume
307
31k
Transcript
*NQMFNFOUJOH.77.JO 0UFNBDIJTXJGU !SFESZFSZF
8IPBN* :VLJ:BNBNPUP • J04&OHJOFFSBU"."503*6. *OD !SFESZFSZF !SFESZFSZF
8IBUEPFT"."503*6.EP "SUJTUT $PMMFDUPST (BMMFSJFT .VTFVNT 4DBO #MPDLDIBJO .BOBHFNFOUBOE $FSUJGJDBUJPOWJB TNBSUDPOUSBDU
4VCTDSJQUJPOCBTFE BSUXPSLTIBSJOH J04 UW04
"HFOEB • 8IZ.77. • 8IBUJT.77. • )PXXPVMEJUMPPL • .77.JO
8IZ.77.
8IZ.77. #FGPSFJNQMFNFOUJOH
8IZ.77. "GUFS #FGPSFJNQMFNFOUJOH
• "WPJE.BTTJWF7JFX$POUSPMMFS • ,FFQJUTJNQMF 8IZ.77.
8IBUJT.77.
• 'JSTUJOUSPEVDFEGPS8JOEPXT1SFTFOUBUJPO'PVOEBUJPO 81' BSDIJUFDUVSF • %FSJWBUJWFPG.7$BOETFQBSBUFTUIF.PEFMBOEUIF7JFXCZJOUSPEVDJOHBOBCTUSBDU MBZFSCFUXFFOUIFN • 8PSLTXFMMXJUI'VODUJPOBM3FBDUJWF1SPHSBNNJOH 8IBUJT.77.
4063$& .JDSPTPGU %FWFMPQFS#MPH
8IBUJT.77. 7JFX 7JFX.PEFM .PEFM %BUB#JOEJOH 6TFS*OQVU 7JFX0VUQVU 4063$& J04ઃܭύλʔϯೖ
7JFX 7JFX.PEFM .PEFM %BUB#JOEJOH 6TFS*OQVU 7JFX0VUQVU 4063$& J04ઃܭύλʔϯೖ 3Y4XJGU
3FBDUJWF4XJGU 8IBUJT.77.
• 5BLFTUJNFTUPNBTUFS • 6TJOHPQFOTPVSDFTPGUXBSFDPNQPOFOUTDPNFTXJUISJTLT #VU
• 5BLFTUJNFTUPNBTUFS • 6TJOHPQFOTPVSDFTPGUXBSFDPNQPOFOUTDPNFTXJUISJTLT #VU 4063$& ͳͥ͏ͪͷνʔϜ։ൃதͷΞϓϦΛ.77.͔Β.7$ʹͨ͠ͷ͔ !MPWFF ʠʢ.77.͔Β.7$ʹ͢Δ͜ͱͰʣѹతʹগͳ͍3Y4XJGUͷ֤छ0QFSBUPSͳͲʹର͢Δशಘίετʡ
• .77.XJUIPVUSFMZJOHPOUIJSEQBSUJFT 5IVT
4PIPXXPVMEJUMPPL
7JFX 7JFX.PEFM .PEFM %BUB#JOEJOH 6TFS*OQVU 7JFX0VUQVU 4063$& J04ઃܭύλʔϯೖ 4PIPXXPVMEJUMPPL
7JFX 7JFX.PEFM 6TFS*OQVU 7JFX0VUQVU 4PIPXXPVMEJUMPPL
7JFX 7JFX.PEFM 6TFS*OQVU 7JFX0VUQVU 4PIPXXPVMEJUMPPL %PO’UGPSHFUUPDSFBUFBT $MBTT0OMZ1SPUPDPM
7JFX 7JFX.PEFM 6TFS*OQVU 7JFX0VUQVU 4PIPXXPVMEJUMPPL
7JFX 7JFX.PEFM 6TFS*OQVU 7JFX0VUQVU 4PIPXXPVMEJUMPPL
7JFX 4PIPXXPVMEJUMPPL
7JFX 4PIPXXPVMEJUMPPL
• ,JDLTUBSUFS 5IF0(GPSVTJOH.77.JOJ04 • .FSQBZ .77.XJUIPVUPQFOTPVSDFGSBNFXPSLT ':*
*NQMFNFOUJOH.77.JO 0UFNBDIJTXJGU !SFESZFSZF
*NQMFNFOUJOH.77.JO
*NQMFNFOUJOH.77.JO
• 9$PEFXJMMOPUDSFBUFBOZDPOUSPMMFST .77.JO
.77.JO 4063$& HJUIVCDPNLJUBTVLF
5BLF"XBZ • .BLFZPVSMJGFTJNQMFCZLFFQJOHFWFSZUIJOHTJNQMF • %PO’UGPSHFUUPDSFBUFBT$MBTT0OMZ1SPUPDPMGPSPVUQVUTQSPUPDPM • .BTUFSJOH'31DBODPTUZPVUJNF • ,FFQBOBZFPOUIFCFTUBSDIJUFDUVSFTGPS4XJGU6*
*OUFSFTUFEJO"SU 8FBSFMPPLJOHGPSJOUFSOTBOEJ04EFWFMPQFST
5IBOLT :VLJ:BNBNPUP ZVLJ!BNBUPSJVNDPN !SFESZFSZF !SFESZFSZF
4PVSDFT • https://peaks.cc/books/iOS_architecture • https://developer.apple.com/videos/play/techtalks-apple-tv/11/ • https://blogs.msdn.microsoft.com/ivo_manolov/2012/03/17/model-view-viewmodel-mvvm- applications-general-introduction/ • https://tech.mercari.com/entry/2019/06/12/120000
• https://speakerdeck.com/lovee/nazeutifalsetimuhakai-fa-zhong-falseapuriwo-mvvm-kara-mvc-nili- sitafalseka?slide=10 • https://school.geekwall.in/p/rk39b100V/mvvm-in-swiftui
"QQFOEJY