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
160
1
Share
The Android Architecture
Slides for DroidYangon2019
မျိုးလွင်ဦး
July 09, 2019
More Decks by မျိုးလွင်ဦး
See All by မျိုးလွင်ဦး
Android Media3: The Next Generation of Media Playback on Android
myolwin00
1
240
Whats new in Android Media?
myolwin00
2
330
MasteringDaggerWithHiltOnAndroid
myolwin00
0
180
BritishUniversityCollegeEventSlides.pdf
myolwin00
0
36
Road to become an Android Developer
myolwin00
1
370
Other Decks in Programming
See All in Programming
「速くなった気がする」をデータで疑う
senleaf24
0
180
tRPCの概要と少しだけパフォーマンス
misoton665
2
200
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
6.5k
Angular Signal Forms
debug_mode
0
110
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
780
LM Linkで(非力な!)ノートPCでローカルLLM
seosoft
0
500
Alternatives to JPA 2026
debop
0
110
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
280
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
110
Radical Imagining - LIFT 2025-2027 Policy Agenda
lift1998
0
310
Kingdom of the Machine
yui_knk
2
260
PDI: Como Alavancar Sua Carreira e Seu Negócio
marcelgsantos
0
120
Featured
See All Featured
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
150
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
310
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Done Done
chrislema
186
16k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.5k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
190
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Ruling the World: When Life Gets Gamed
codingconduct
0
210
Docker and Python
trallard
47
3.8k
Bash Introduction
62gerente
615
210k
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