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
110
Poniendo Kotlin en producción a palos
tuenti
0
96
Culture Matters
tuenti
1
180
Defensive Programming & Resilient systems in Real World (TM)
tuenti
1
1.4k
Testing Express: 0 to 100 in 30 slides
tuenti
5
360
How .Tuenti develops tech products
tuenti
0
76
Microservices and Testing, talking from the experience
tuenti
2
150
Love your tests
tuenti
0
1.2k
Experiences with Microservices at Tuenti
tuenti
0
250
Other Decks in Technology
See All in Technology
Mambaで物体検出 完全に理解した
shirarei24
2
180
多様なニーズに応える Movable Type ラインナップ 全紹介
masakah
0
110
【2025 Japan AWS Jr. Champions Ignition】点から線、線から面へ〜僕たちが起こすコラボレーション・ムーブメント〜
amixedcolor
1
110
興味の胞子を育て 業務と技術に広がる”きのこ力”
fumiyasac0921
0
540
ファインディにおける Dataform ブランチ戦略
hiracky16
0
250
Unson OS|48時間で「売れるか」を判定する AI 市場検証プラットフォーム
unson
0
160
마라톤 끝의 단거리 스퍼트: 2025년의 AI
inureyes
PRO
1
520
Bet "Bet AI" - Accelerating Our AI Journey #BetAIDay
layerx
PRO
4
1.3k
Rubyの国のPerlMonger
anatofuz
2
690
AI人生苦節10年で会得したAIがやること_人間がやること.pdf
shibuiwilliam
1
260
GMOペパボのデータ基盤とデータ活用の現在地 / Current State of GMO Pepabo's Data Infrastructure and Data Utilization
zaimy
3
180
Kiroから考える AIコーディングツールの潮流
s4yuba
3
600
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
44
7.6k
Writing Fast Ruby
sferik
628
62k
Building an army of robots
kneath
306
45k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
BBQ
matthewcrist
89
9.8k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
540
How STYLIGHT went responsive
nonsquared
100
5.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