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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Aaron He
March 08, 2016
Technology
69
0
Share
OkMVP
An internal talk I gave at work on MVP.
Aaron He
March 08, 2016
More Decks by Aaron He
See All by Aaron He
Road to Modularization(DroidCon NYC 2019)
aaronhe
1
190
There's No Magic - How Kotlin can be your best friends @DevFest LA 2017
aaronhe
0
28
Google I/O '17 recap - GDG LA May 2017 Android@Tinder
aaronhe
0
94
RxJava for Android - GDG DevFest LA 2016
aaronhe
0
83
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
タスク管理も1on1も、もう「管理」じゃない - KiroとBedrock AgentCoreで変わった“判断の仕事”
yusukeshimizu
0
160
OCI技術資料 : 証明書サービス概要
ocise
1
7.2k
Bref でサービスを運用している話
sgash708
0
220
GitHub Advanced Security × Defender for Cloudで開発とSecOpsのサイロを超える: コードとクラウドをつなぐ、開発プラットフォームのセキュリティ
yuriemori
1
120
Tour of Agent Protocols: MCP, A2A, AG-UI, A2UI with ADK
meteatamel
0
200
ブラックボックス化したMLシステムのVertex AI移行 / mlops_community_62
visional_engineering_and_design
1
260
Babylon.js Japan Activities (2026/4)
limes2018
0
150
Data Enabling Team立ち上げました
sansantech
PRO
0
210
JAWS DAYS 2026でAIの「もやっと」感が解消された話
smt7174
1
120
互換性のある(らしい)DBへの移行など考えるにあたってたいへんざっくり
sejima
PRO
0
520
OPENLOGI Company Profile for engineer
hr01
1
62k
CloudFrontのHost Header転送設定でパケットの中身はどう変わるのか?
nagisa53
1
250
Featured
See All Featured
From π to Pie charts
rasagy
0
160
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
250
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
470
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
240
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
300
RailsConf 2023
tenderlove
30
1.4k
Ethics towards AI in product and experience design
skipperchong
2
250
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
ラッコキーワード サービス紹介資料
rakko
1
2.9M
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
250
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
How GitHub (no longer) Works
holman
316
150k
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