Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
MVVM is Dead
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
DAloG
March 05, 2016
Programming
910
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MVVM is Dead
Talk about MVVM evolution
DAloG
March 05, 2016
Transcript
44 slides
@daloog MVVM IS DEAD ALEXEY DEMEDETSKIY CocoaHeads Ukraine #8 1
@daloog HYPE HTTPS://YOUTU.BE/XPFRUM_ODKA " 2
@daloog NEW ADD NEW PROBLEMS 3
@daloog OLD SOLVE OLD PROBLEMS 4
@daloog WHY? MORE PROBLEMS? ⁉ 5
@daloog GROWTH 6
@daloog AGE «I WANT TO SOLVE NEW PROBLEMS!» 7
@daloog LEARN TIME «I DON’T SEE OLD PROBLEMS» 8
@daloog HISTORY HOW WE REACH AN MVVM? 9
@daloog MVS MODEL VIEW SEPARATION / 10
@daloog VIEW CAN RENDER SPECIFIC MODEL VIEW MODEL 11
@daloog MODEL CAN BE RENDERED BY ANY VIEW VIEW MODEL
VIEW 12
@daloog REUSE MODEL ♻ 13
@daloog OOP OBJECT OVERUSING PROGRAMMING 14
@daloog OOP OBJECT OVERUSING PROGRAMMING @*@ 15
@daloog BEHAVIOR OBJECTS ARE MUTABLE 16
@daloog DATA VALUE IS STATIC AND IMMUTABLE 17
@daloog MODEL MODEL IS AN OBJECT, NOT A DATA 18
@daloog STATE IS HARD MUTATION CONTROL 19
@daloog UI IS HARD UI IS STATE DRIVEN ⌚20
@daloog UI IS ASYNC ANIMATION AND DISPLAY TIME 21
@daloog ORDER «ABA» AND «AAB» IS DIFFERENT 22
@daloog LAYOUT CONTENT DRIVEN 23
@daloog CONTROLLER APPLY VIEW COMMANDS TO MODEL CONTROLLER VIEW MODEL
24
@daloog CONTROLLER APPLY MODEL CHANGES TO VIEW VIEW CONTROLLER VIEW
MODEL 25
@daloog CONTROLLER GOES TO NETWORK VIEW CONTROLLER NETWORK MODEL 26
@daloog CONTROLLER WORK WITH DATABASE VIEW CONTROLLER DATABASE MODEL 27
@daloog CONTROLLER NOT REUSABLE ♻ ❌ 28
@daloog UIKIT CORE FRAMEWORK 29
@daloog LIFECYCLE IS DETERMINED BY UIKIT 30
@daloog LIBRARY? CAN WE TREAT UIKIT AS A 31
@daloog VIEWMODEL TREAT UIKIT AS RENDER LIBRARY 32
@daloog MVVM UIKIT IS A VIEW ⌨ 33
@daloog VIEW VIEWMODEL JUST A DATA FOR VIEW APP VIEW
MODEL UIKITTY 34
@daloog CORRECT? 35
@daloog NO! 36
@daloog VIEW VIEWMODEL JUST A DATA FOR VIEW APP VIEW
MODEL UIKITTY 37
@daloog VIEW VM PURPOSE IS HIDE AND ABSTRACT VIEW APP
VIEW MODEL 38
@daloog APP HAS OWN LIFECYCLE VIEW APP VIEW MODEL 㾺
39
@daloog VIEW HAS OWN LIFECYCLE VIEW APP VIEW MODEL 㾺
㾺40
@daloog MVC TOO MANY NAMES. 41
@daloog MVVM TOO MANY NAMES. 42
@daloog VM != MVVM USE VIEW MODELS. ❤ 43
@daloog Q?
[email protected]
44
More Decks by DAloG
See All by DAloG
State normalization (RU)
dalog
0
260
Redux + MQTT
dalog
1
840
От задач к проблемам
dalog
1
300
Unlimited power of Data-Driven UI
dalog
4
720
Data-Driven View Controllers. Tips and Tricks
dalog
5
2k
2 years of Redux in iOS. Lessons learned
dalog
0
440
Why unidirectional architecture matter for iOS.
dalog
1
350
Mobile backend without REST
dalog
2
160
Self managed teams 101
dalog
0
220
Other Decks in Programming
See All in Programming
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.7k
クラウドエージェントは、 何がそんなに便利なのか / what makes cloud agents so useful
rkaga
5
850
graphql-ruby を Spinel で速くしようとした話
mtsmfm
0
140
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
6
2.3k
Kawaiicon: Kubernetes, it's no longer cool, but let's secure it anyway!
barnbarn
0
130
自作Discord音声botをLambda MicroVMsに移行した話 / Migrating My Discord Voice Bot to Lambda MicroVMs
akihisaikeda
1
310
AI時代のIaC入門 〜なぜインフラをコードで管理したいのか?〜 / Introduction to IaC in the AI Era
akihisaikeda
6
1.5k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
290
Getting Started with Vibe Coding
miccheng
0
220
[DroidKnights 2026] Workflow AX: From Auto-Documented Policies to E2E Testing
raeminkang
0
570
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
370
作れるエンジニアから、価値を届けるエンジニアへ
ryunakayama
1
280
Featured
See All Featured
It's Worth the Effort
3n
188
29k
Being A Developer After 40
akosma
PRO
92
590k
Typedesign – Prime Four
hannesfritz
42
3.2k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
980
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
530
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Accessibility Awareness
sabderemane
1
300
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
560
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.2k
The Language of Interfaces
destraynor
162
27k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1.1k