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
Android architecture patterns
Search
Kirill Zotin
November 23, 2013
Programming
310
3
Share
Android architecture patterns
Kirill Zotin
November 23, 2013
More Decks by Kirill Zotin
See All by Kirill Zotin
From idea to production with serverless architecture
painie
0
340
Continuous integration for androids
painie
0
130
Modern android UI
painie
1
94
Android client-server interaction
painie
0
62
Other Decks in Programming
See All in Programming
의존성 주입과 모듈화
fornewid
0
120
AIエージェントで業務改善してみた
taku271
0
500
ドメインイベントでビジネスロジックを解きほぐす #phpcon_odawara
kajitack
2
130
How Swift's Type System Guides AI Agents
koher
0
200
Go_College_最終発表資料__外部公開用_.pdf
xe_pc23
0
160
夢の無限スパゲッティ製造機 -実装篇- #phpstudy
o0h
PRO
0
200
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
3
520
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
190
感情を設計する
ichimichi
5
1.4k
PDI: Como Alavancar Sua Carreira e Seu Negócio
marcelgsantos
0
110
存在論的プログラミング: 時間と存在を記述する
koriym
5
850
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
810
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
370
A Soul's Torment
seathinner
6
2.6k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.3k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
170
Writing Fast Ruby
sferik
630
63k
Building the Perfect Custom Keyboard
takai
2
720
Speed Design
sergeychernyshev
33
1.6k
New Earth Scene 8
popppiees
3
2k
Transcript
Android app architecture patterns Kirill Zotin 23.11.2013
None
Data storage
None
None
None
None
DAO layer • Poor async support • Lifecycle is a
nightmare • Difficult to implement properly • Poor async support • Lifecycle is a nightmare • Extra layer of complexity ORM frameworks
MVC?
MVP?
MVVM?
MWTF !
Content Provider + Contract ~ model Activities ~ controller layouts.xml
~ view
Cursor is the model ! • Simple • Async •
Framework support (ContentObserver, Adapters) • High learning curve
Components communication
None
None
None
Local Broadcast Manager • Boilerplate • No type safety •
Hard to test • Fails fast • @Produce • DI friendly Otto, EventBus
Developing Android REST client applications
Developing Android REST client applications http://www.youtube.com/watch?v=xHXn3Kg2IQE © Virgil Dobjanschi
None
Already implemented! Retrofit https://github.com/square/retrofit
Already implemented! Retrofit https://github.com/square/retrofit Volley https://developers.google. com/events/io/sessions/325304728
Already implemented! Retrofit https://github.com/square/retrofit Volley https://developers.google. com/events/io/sessions/325304728 https://github. com/111minutes/111-android- restapi
Dependency injection
In example
None
None
None
None
Not everyone is happy with Android SDK
FRP ! https://www.coursera.org/course/reactive
Thanks! Questions?