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
The Android Architecture
Search
မျိုးလွင်ဦး
July 09, 2019
Programming
1
150
The Android Architecture
Slides for DroidYangon2019
မျိုးလွင်ဦး
July 09, 2019
Tweet
Share
More Decks by မျိုးလွင်ဦး
See All by မျိုးလွင်ဦး
Android Media3: The Next Generation of Media Playback on Android
myolwin00
1
200
Whats new in Android Media?
myolwin00
2
320
MasteringDaggerWithHiltOnAndroid
myolwin00
0
170
BritishUniversityCollegeEventSlides.pdf
myolwin00
0
32
Road to become an Android Developer
myolwin00
1
360
Other Decks in Programming
See All in Programming
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
220
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
160
Deep Dive into ~/.claude/projects
hiragram
8
1.5k
Java on Azure で LangGraph!
kohei3110
0
170
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
1
550
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
270
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
110
GoのGenericsによるslice操作との付き合い方
syumai
3
690
5つのアンチパターンから学ぶLT設計
narihara
1
110
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
1
120
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
190
XP, Testing and ninja testing
m_seki
3
190
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
A designer walks into a library…
pauljervisheath
207
24k
How to Ace a Technical Interview
jacobian
277
23k
Why You Should Never Use an ORM
jnunemaker
PRO
57
9.4k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Optimizing for Happiness
mojombo
379
70k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
210
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Transcript
The Android Architecture @myolwin00
Why do we need this?
Separation of concerns(SoC) • Don’t write all your code in
an Activity or a Fragment • Separate into sections • Encapsulate informations
Issues • Limited resource • UI controllers are not for
business logic • You don't own implementations of Activity and Fragment • Destroyed after configuration changes • Potential memory leaks • Hard to test • Hard to maintain • And extending your app is more difficult
If you shouldn't use app components to store app data
and state, how should you design your app?
Clean Architecture, Chapter 15 “A good software architecture allows the
system to be easy to understand, to develop, to maintain and to implement.”
Common Architectures • MVC • MVP • MVVM • MVI,
Clean Architecture and more…
Model-View-Controller(MVC)
• Describe business logic • Data operation • Define data
manipulation Model • Represent UI components • Display the data from Controller View • Coordinate between View and Model Controller
MVP(Model-View-Presenter)
MVVM(Model-View-ViewModel)
Loaders • AsyncTaskLoader • CursorLoader
Loaders
MVVM with AAC Source: https://developer.android.com/jetpack/docs/guide
ViewModel From AAC • Replace loaders • Manage UI-related data
in a lifecycle conscious way • Survive configuration changes
ViewModel Lifecycle
Useful links • https://github.com/googlesamples/android-architecture • https://github.com/googlesamples/android- architecture-components • https://developer.android.com/jetpack/docs/guide
Thank You ! It’s question time ! @myolwin00