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
3k
tvOSにちょっと注目してみる
redryerye
0
920
Implement P2P connection and stream your content
redryerye
0
710
Other Decks in Technology
See All in Technology
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
5.4k
多様な事業ドメインのクリエイターへ 価値を届けるための営みについて
massyuu
1
290
AI駆動開発を推進するためにサービス開発チームで 取り組んでいること
noayaoshiro
0
180
KMP の Swift export
kokihirokawa
0
330
Azure SynapseからAzure Databricksへ 移行してわかった新時代のコスト問題!?
databricksjapan
0
140
【Oracle Cloud ウェビナー】クラウド導入に「専用クラウド」という選択肢、Oracle AlloyとOCI Dedicated Region とは
oracle4engineer
PRO
3
110
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
9k
Trust as Infrastructure
bcantrill
0
340
バイブコーディングと継続的デプロイメント
nwiizo
2
430
VCC 2025 Write-up
bata_24
0
180
Findy Team+のSOC2取得までの道のり
rvirus0817
0
350
小学4年生夏休みの自由研究「ぼくと Copilot エージェント」
taichinakamura
0
220
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
431
66k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
The Cost Of JavaScript in 2023
addyosmani
53
9k
Code Review Best Practice
trishagee
72
19k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
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