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
Forgetting Android
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Tuenti
December 10, 2013
Technology
3
1.1k
Forgetting Android
Cómo preparar la arquitectura de tu aplicación para que Android no sea nada más que una plataforma
Tuenti
December 10, 2013
Tweet
Share
More Decks by Tuenti
See All by Tuenti
Creating a culture of learning at Tuenti
tuenti
1
140
Poniendo Kotlin en producción a palos
tuenti
0
120
Culture Matters
tuenti
1
190
Defensive Programming & Resilient systems in Real World (TM)
tuenti
1
1.6k
Testing Express: 0 to 100 in 30 slides
tuenti
5
410
How .Tuenti develops tech products
tuenti
0
90
Microservices and Testing, talking from the experience
tuenti
2
170
Love your tests
tuenti
0
1.2k
Experiences with Microservices at Tuenti
tuenti
0
270
Other Decks in Technology
See All in Technology
VPCエンドポイント意外とお金かかるなぁ。せや、共有したろ!
tommy0124
1
620
[JAWSDAYS2026]Who is responsible for IAM
mizukibbb
0
690
クラウド × シリコンの Mashup - AWS チップ開発で広がる AI 基盤の選択肢
htokoyo
2
250
猫でもわかるKiro CLI(AI 駆動開発への道編)
kentapapa
0
220
会社紹介資料 / Sansan Company Profile
sansan33
PRO
16
410k
It’s “Time” to use Temporal
sajikix
1
160
Scrumは歪む — 組織設計の原理原則
dashi
0
180
Claude Codeが爆速進化してプラグイン追従がつらいので半自動化した話 ver.2
rfdnxbro
0
540
ナレッジワークのご紹介(第88回情報処理学会 )
kworkdev
PRO
0
210
モブプログラミング再入門 ー 基本から見直す、AI時代のチーム開発の選択肢 ー / A Re-introduction of Mob Programming
takaking22
5
1.5k
Dr. Werner Vogelsの14年のキーノートから紐解くエンジニアリング組織への処方箋@JAWS DAYS 2026
p0n
1
140
僕、S3 シンプルって名前だけど全然シンプルじゃありません よろしくお願いします
yama3133
1
220
Featured
See All Featured
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
480
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
120
Agile that works and the tools we love
rasmusluckow
331
21k
The Invisible Side of Design
smashingmag
302
51k
Code Reviewing Like a Champion
maltzj
528
40k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
450
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
860
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
BBQ
matthewcrist
89
10k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.5k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
470
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
Forgetting Android Jorge J. Barroso Tech Lead Android Core
[email protected]
@flipper83 jueves, 12 de diciembre de 13
jueves, 12 de diciembre de 13
Any fool can write code that a computer can understand.
Good programmers write code that humans can understand. Martin Fowler jueves, 12 de diciembre de 13
1 Solid jueves, 12 de diciembre de 13
Single responsibility principle Open/closed principle Liskov substitution principle Interface segregation
principle Dependency inversion principle jueves, 12 de diciembre de 13
Clean Architecture 2 jueves, 12 de diciembre de 13
A good architecture allows you to defer framework decisions. A
good architecture allows frameworks to act as plugins to the app. Robert Martin “The database is a detail, a hardware detail. We would not use one at all if all our data could fit in memory for ever” jueves, 12 de diciembre de 13
UI External Interfaces Db Push Network Storage Interfaces Interfaces Business
Model Interactors Interactors jueves, 12 de diciembre de 13
UI Layer UI Layer UI Data Model Data Mapper Boundary
Interactor Bussines Data Model Data Storage Test Storage Data Mapper Data Mapper Storage Data Model Test Data Model jueves, 12 de diciembre de 13
FeedViewModel FeedBoundary FeedListFragment FeedProvider GetFeed GetFeedImp List<Hipster> User DataSource Net
UserDataSource LikeDataSource Like DataSource Parse API UserApi API Retrofit api Parse api jueves, 12 de diciembre de 13
Conclusion 3 http://www.flickr.com/photos/inf3ktion/ jueves, 12 de diciembre de 13
Good Layer Responsabilites jueves, 12 de diciembre de 13
Easy to test and mock jueves, 12 de diciembre de
13
Easy to add or modify code jueves, 12 de diciembre
de 13
Easy to hide implementations: Dagger jueves, 12 de diciembre de
13
Easy to find smells jueves, 12 de diciembre de 13
Async code: RxJava jueves, 12 de diciembre de 13
Duplicate data model : Automaper jueves, 12 de diciembre de
13
Change your mind jueves, 12 de diciembre de 13
http://jobs.tuenti.com
[email protected]
@flipper83 jueves, 12 de diciembre de 13