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
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
120
Poniendo Kotlin en producción a palos
tuenti
0
100
Culture Matters
tuenti
1
180
Defensive Programming & Resilient systems in Real World (TM)
tuenti
1
1.5k
Testing Express: 0 to 100 in 30 slides
tuenti
5
370
How .Tuenti develops tech products
tuenti
0
77
Microservices and Testing, talking from the experience
tuenti
2
160
Love your tests
tuenti
0
1.2k
Experiences with Microservices at Tuenti
tuenti
0
260
Other Decks in Technology
See All in Technology
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
2.3k
CREが作る自己解決サイクルSlackワークフローに組み込んだAIによる社内ヘルプデスク改革 #cre_meetup
bengo4com
0
340
SRE × マネジメントレイヤーが挑戦した組織・会社のオブザーバビリティ改革 ― ビジネス価値と信頼性を両立するリアルな挑戦
coconala_engineer
0
250
マルチエージェントのチームビルディング_2025-10-25
shinoyamada
0
180
AIでデータ活用を加速させる取り組み / Leveraging AI to accelerate data utilization
okiyuki99
0
150
AI時代におけるデータの重要性 ~データマネジメントの第一歩~
ryoichi_ota
0
710
だいたい分かった気になる 『SREの知識地図』 / introduction-to-sre-knowledge-map-book
katsuhisa91
PRO
3
1.4k
プレイドのユニークな技術とインターンのリアル
plaidtech
PRO
1
360
Dify on AWS 環境構築手順
yosse95ai
0
130
.NET 10のBlazorの期待の新機能
htkym
0
110
ハノーファーメッセ2025で見た生成AI活用ユースケース.pdf
hamadakoji
1
470
ローカルLLMとLINE Botの組み合わせ その2(EVO-X2でgpt-oss-120bを利用) / LINE DC Generative AI Meetup #7
you
PRO
1
160
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
57k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Building Applications with DynamoDB
mza
96
6.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Fireside Chat
paigeccino
41
3.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
130k
It's Worth the Effort
3n
187
28k
Statistics for Hackers
jakevdp
799
220k
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