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
Thirteen Ways of Looking at a View Controller
Search
Greg Heo
June 06, 2017
Technology
0
120
Thirteen Ways of Looking at a View Controller
View controllers: we know them, love them, despise them, and overload them.
Greg Heo
June 06, 2017
Tweet
Share
More Decks by Greg Heo
See All by Greg Heo
Concurrency From the Ground Up
gregheo
0
130
The least you need to know about hashing in Swift
gregheo
0
91
Shared Mutable State
gregheo
0
300
Promises, Futures, and the Shape of Your Code
gregheo
0
42
Shared, Exclusive, Mutable, Immutable
gregheo
0
96
Getting Under Swift’s Skin
gregheo
0
510
Sanitizing Threads for Fun & Profit
gregheo
0
94
Sanitizing All* The Things
gregheo
0
44
Five Unbelievable Secrets of Reactive Programming the Experts Don't Want You to Know!
gregheo
3
300
Other Decks in Technology
See All in Technology
2024/4/26 コンピュータ歴史博物館解説告知
toshi_atsumi
0
190
【SORACOM UG】SIM Deep Dive セキュアエレメント編
soracom
PRO
0
250
20240416_devopsdaystokyo
kzkmaeda
1
180
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
1
320
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
640
少数チームで挑む: SwiftUI, TCA, KMPを用いた 新規動画配信アプリ 「ABEMA Live」の開発について
tomu28
0
530
オブザーバビリティの Primary Signals
onk
PRO
0
540
4年前、あるじゃん老害エンジニアLT合戦に登壇、米国西海岸コンピュータ歴史博物館体験記の続編
toshi_atsumi
0
190
Databricks におけるデータエンジニアリング
databricksjapan
0
370
AWS パートナー企業でテクニカルサポートに従事して2年経ったので思うところをまとめてみた
kazzpapa3
3
1.3k
Tebiki株式会社 エンジニア採用資料
tebiki
0
4.1k
最近たまに見かけるTiDBってなんだ? - Findy
pingcap0315
2
530
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
22
3.9k
Clear Off the Table
cherdarchuk
82
310k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
226
16k
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.4k
The Invisible Side of Design
smashingmag
293
49k
How To Stay Up To Date on Web Technology
chriscoyier
781
250k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
GraphQLとの向き合い方2022年版
quramy
30
12k
The Illustrated Children's Guide to Kubernetes
chrisshort
28
46k
Ruby is Unlike a Banana
tanoku
95
10k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
320
20k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.3k
Transcript
@gregheo AltConf 2017 I was of three minds, Like a
tree In which there are three blackbirds. Thirteen Ways of Looking at a Blackbird Wallace Stevens
@gregheo AltConf 2017 Thirteen Ways of Looking at a View
Controller approximately
@gregheo AltConf 2017 Hold the Model Controller Model View
@gregheo AltConf 2017 Coordinate Between Views Button Label tap action
set text View Controller ???
@gregheo AltConf 2017 View Appearance Callbacks • view did load
• view will / did appear • view will / did disappear
@gregheo AltConf 2017 Handle View Layout • loadView • view
setup in viewDidLoad • view will / did layout subviews • layout guides
@gregheo AltConf 2017 “We shape our buildings, and afterwards
our buildings shape us.”
@gregheo AltConf 2017 Miscellaneous • “is editing” state • state
restoration • search display controller • title
@gregheo AltConf 2017 Manage Style • presentation style • transitions
• thirteen ways to handle rotation
@gregheo AltConf 2017 Navigation • Navigation controllers, tab bar controllers,
split view controllers • View controller containment • Storyboard segues
@gregheo AltConf 2017 Among twenty snowy mountains, The only moving
thing Was the eye of the blackbird. swift
@gregheo AltConf 2017 " #
@gregheo AltConf 2017 so controlling such view much single responsibility
wow very SOLID
@gregheo AltConf 2017 Model View Presentation Logic Navigation Business Logic
Manage Views Massive View Controller View Controller
@gregheo AltConf 2017 View Controller Model View Presentation Logic Navigation?
Business Logic Manage Views MVVM View Model
@gregheo AltConf 2017 Routing Entity View Presentation Logic Navigation Business
Logic Models VIPER Presenter Interactor
@gregheo AltConf 2017 Router View Presentation Logic Navigation Business Logic
Model Riblets Presenter Interactor
@gregheo AltConf 2017 Streams View Model Reactive Observer Business Logic
View Model Business Logic
@gregheo AltConf 2017 When the blackbird flew out of sight,
It marked the edge Of one of many circles.
@gregheo AltConf 2017
@gregheo AltConf 2017
@gregheo AltConf 2017 Thirteen Ways of Looking at a View
Controller