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
OkMVP
Search
Aaron He
March 08, 2016
Technology
0
68
OkMVP
An internal talk I gave at work on MVP.
Aaron He
March 08, 2016
Tweet
Share
More Decks by Aaron He
See All by Aaron He
Road to Modularization(DroidCon NYC 2019)
aaronhe
1
180
There's No Magic - How Kotlin can be your best friends @DevFest LA 2017
aaronhe
0
27
Google I/O '17 recap - GDG LA May 2017 Android@Tinder
aaronhe
0
92
RxJava for Android - GDG DevFest LA 2016
aaronhe
0
82
Memory Leak on Andriod - GDG LA July 2016
aaronhe
0
43
Auto Value and Its Extension GDG LA April
aaronhe
0
53
Other Decks in Technology
See All in Technology
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
120
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
190
IaaS/SaaS管理における SREの実践 - SRE Kaigi 2026
bbqallstars
4
1.7k
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
1
120
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.1k
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
790
入社1ヶ月でデータパイプライン講座を作った話
waiwai2111
1
250
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.3k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.8k
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Rails Girls Zürich Keynote
gr2m
96
14k
Designing Powerful Visuals for Engaging Learning
tmiket
0
220
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
770
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Technical Leadership for Architectural Decision Making
baasie
1
240
Paper Plane
katiecoart
PRO
0
46k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
0
1.9k
Transcript
OK MVP Aaron He
OK MAP WHAT’S THE PROBLEM? ▸ We want to deliver
features fast ▸ At same time we need it reliable, scalable and maintainable ▸ We also need a pattern that is consistent
OK MVP DECOUPLE BUSINESS LOGIC ▸ Activity/Fragment is difficult to
test ▸ Yes, Espresso/UI Automater but with sloppy design Integration tests are a scam: https://vimeo.com/80533536
OK MVP WHAT IS MVP? ▸ Model-View-Presenter https://github.com/rallat/EffectiveAndroid
OK MVP MODEL-VIEW-PRESENTER ▸ Start by defining interfaces. Pop Config
as an example. ▸ Model ▸ View ▸ Presenter ▸ The interface is the contract ▸ Can be mocked
OK MVP EASY TO INTEGRATE WITH LEGACY CODE ▸ Flexible
▸ Example: Confirm dialog when vehicle is deleted
OK MVP WHAT COULD GO WRONG ▸ The View ▸
Android fragmentation ▸ Interface is the contract ▸ But does the implementation actually do what you expect? Integration tests are a scam: https://vimeo.com/80533536
OK MVP OTHER CHOICES ▸ MVC ▸ MVVM ▸ U2020
OK MVP OK MVP ▸ An Ok architecture but simple,
scalable, maintainable A few Ok libraries: https://www.youtube.com/watch?v=WvyScM_S88c