$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
MVVM: An iOS Journey
Search
Kim Arnett
June 09, 2017
Technology
0
110
MVVM: An iOS Journey
Slides from my talk @ Beer City Code in Grand Rapids, MI June 2017
Kim Arnett
June 09, 2017
Tweet
Share
More Decks by Kim Arnett
See All by Kim Arnett
iOSIntroSlides.pdf
kimberlyarnett
0
160
Other Decks in Technology
See All in Technology
21st ACRi Webinar - AMD Presentation Slide (Nao Sumikawa)
nao_sumikawa
0
190
DGX SparkでローカルLLMをLangChainで動かした話
ruzia
1
260
原理から解き明かす AIと人間の成長 - Progate BAR
teba_eleven
2
300
私のRails開発環境
yahonda
0
180
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
37k
A Compass of Thought: Guiding the Future of Test Automation ( #jassttokai25 , #jassttokai )
teyamagu
PRO
1
170
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
0
120
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
Kill the Vibe?Architecture in the age of AI
stoth
1
170
段階的に進める、 挫折しない自宅サーバ入門
yu_kod
5
2.2k
「え?!それ今ではHTMLだけでできるの!?」驚きの進化を遂げたモダンHTML
riyaamemiya
9
4.4k
モバイルゲーム開発におけるエージェント技術活用への試行錯誤 ~開発効率化へのアプローチの紹介と未来に向けた展望~
qualiarts
0
270
Featured
See All Featured
KATA
mclloyd
PRO
32
15k
We Have a Design System, Now What?
morganepeng
54
7.9k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.1k
Building Adaptive Systems
keathley
44
2.9k
Thoughts on Productivity
jonyablonski
73
5k
Navigating Team Friction
lara
191
16k
RailsConf 2023
tenderlove
30
1.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Become a Pro
speakerdeck
PRO
30
5.7k
Done Done
chrislema
186
16k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Transcript
MVVM: An iOS Journey Kim Arnett @kimberlypilbeam
MVVM: An iOS Journey Problem: Testing is a bear. Files
continue to be massive. Hacks for testing feel terrible. Dependency injection?
MVVM: An iOS Journey Swift gave Obj-C programmers an appreciation
for cleaner solutions.
MVVM: An iOS Journey Swift gave Obj-C programmers an appreciation
for cleaner solutions. [[[[[you know] what] im] talking] about]
ARCHITECTURE
MVC: Model View Controller (recommended by Apple) Model Controller View
User Action Updates Notifies Updates
MVVM: Model View ViewModel Model ViewModel View User Action Updates
Notifies Updates
MVC: Model View Controller (recommended by Apple) Model Controller View
UIView UIViewController • Logic • Network Calls Data Models
MVVM: Model View ViewModel Model ViewModel View UIViewController UIView Logic
Network Calls Data Models
TESTING
Unit Testing VS UI Testing Unit Testing is for Logic
& Business Requirements UI Testing* is to make sure views exist & can be navigated *Important to set Accessibility labels
MVVM: Model View ViewModel Model ViewModel View UIViewController UIView Logic
Network Calls Data Models Unit Testing with Mock Data
MVVM: Model View ViewModel Model ViewModel View UIViewController UIView Logic
Network Calls Data Models UI Testing with Mock Data
Implementation
MVVM: An iOS Journey Cleaner Code Better Performance & Less
Hack-y Easier Maintainability Open for Testing
MVVM: An iOS Journey Kim Arnett @kimberlypilbeam github.com/karnett/MVVM