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
130
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
400
How .Tuenti develops tech products
tuenti
0
86
Microservices and Testing, talking from the experience
tuenti
2
160
Love your tests
tuenti
0
1.2k
Experiences with Microservices at Tuenti
tuenti
0
270
Other Decks in Technology
See All in Technology
Claude Codeはレガシー移行でどこまで使えるのか?
ak2ie
0
750
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
43k
AIで「ふとした疑問」を即座に検証する 〜定量で圧倒するN1理解〜
kakehashi
PRO
3
730
競争優位を生み出す戦略的内製開発の実践技法
masuda220
PRO
2
410
バニラVisaギフトカードを棄てるのは結構大変
meow_noisy
0
130
フルスタックGoでスコア改ざんを防いだ話
ponyo877
0
520
Kubernetes環境周りの責任範囲をいい機会なので考える / Taking the Opportunity to Clarify Kubernetes Responsibilities
kohbis
1
110
Agent Payments Protocolで実装するAIエージェント間取引
tokio007
0
160
Claude Codeと駆け抜ける 情報収集と実践録
sontixyou
1
850
20260222ねこIoTLT ねこIoTLTをふりかえる
poropinai1966
0
200
AI Coding Agentの地殻変動 ~ ai-coding.info の定点観測 ~
kotauchisunsun
0
140
【Developers Summit 2026】Memory Is All You Need:コンテキストの「最適化」から「継続性」へ ~RAGを進化させるメモリエンジニアリングの最前線~
shisyu_gaku
5
700
Featured
See All Featured
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
130
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.1k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
530
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
130
Chasing Engaging Ingredients in Design
codingconduct
0
120
Deep Space Network (abreviated)
tonyrice
0
76
Discover your Explorer Soul
emna__ayadi
2
1.1k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
80
Designing Experiences People Love
moore
144
24k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
830
Ruling the World: When Life Gets Gamed
codingconduct
0
160
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
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