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
MVVM & RAC
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ullrich Schäfer
April 16, 2014
Programming
1
250
MVVM & RAC
Talk given at CocoaHeads Berlin April 2014
Demo project:
https://github.com/stigi/mvvm-example
Ullrich Schäfer
April 16, 2014
Tweet
Share
Other Decks in Programming
See All in Programming
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
380
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
690
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.3k
CSC307 Lecture 01
javiergs
PRO
0
690
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
120
なぜSQLはAIぽく見えるのか/why does SQL look AI like
florets1
0
460
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
AI時代の認知負荷との向き合い方
optfit
0
160
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
3.9k
AWS re:Invent 2025参加 直前 Seattle-Tacoma Airport(SEA)におけるハードウェア紛失インシデントLT
tetutetu214
2
110
並行開発のためのコードレビュー
miyukiw
0
150
AI巻き込み型コードレビューのススメ
nealle
1
270
Featured
See All Featured
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
190
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
50k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
430
How GitHub (no longer) Works
holman
316
140k
Designing Powerful Visuals for Engaging Learning
tmiket
0
230
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
580
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
WENDY [Excerpt]
tessaabrams
9
36k
Balancing Empowerment & Direction
lara
5
890
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Transcript
MVVM & RAC CocoaHeads BLN 2014/04
About Me! ! ! stigi " stigi # ullrich.is ||
nslog.de || .com $ ullrich@ .com
Model – View – ViewModel • But first…
Where we come from – MVC Controller Model View Notify
Update Update User Action (according to Apple)
Reality • View controllers carry application logic! • And view
controllers are part of the View! • shouldRotate, viewDidAppear, viewDidLayoutSubviews! • Views often know way to much about the model! • -[UITableViewCell configureWithObject:]! • -[PersonView initWithPerson:]
Model – View – ViewModel Model View | ViewController ViewModel
Update Notify User Actions Notify
Benefits • ViewController holds no application logic! • ViewModel does
not know views! • ViewModel can be reused and extended! • Easy UI changes! • ViewModel is testable! • Easy migration, can co-exist with M–V–C
What goes where Model View | ViewController ViewModel UIView, Nibs,!
UIViewController,! DataSources ViewModel NSManagedObject,! API Controller,! … RAC RAC
Reactive Cocoa • FRP! • React to Change! • Declarative!
• Works great with KVO
Examples • In Xcode! ! ! ! • https://github.com/stigi/mvvm-example
Take aways • You’re doing it wrong! • MVVM is
Zen, give it a try! • MVVM & MVC can co-exists
Questions? • Yes, Please?
About Me! ! ! stigi " stigi # ullrich.is ||
nslog.de || .com $ ullrich@ .com