Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Desmitificando Clean Architecture en Android
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Armando Picón
June 22, 2022
Programming
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Desmitificando Clean Architecture en Android
Armando Picón
June 22, 2022
More Decks by Armando Picón
See All by Armando Picón
Dibujo en Compose
devpicon
0
74
Gemini in Android Studio
devpicon
0
2.9k
Scalable Depency Management with Version Catalog
devpicon
0
73
StateFlow y SharedFlow ¿el fin de LiveData?
devpicon
0
350
Introdução ao Kotlin Flow
devpicon
0
150
Introducción a Kotlin Flow
devpicon
0
180
Introduction to Kotlin Flow
devpicon
0
280
Coroutines on the way!
devpicon
0
100
The Journey to Reach a Good Architecture
devpicon
0
210
Other Decks in Programming
See All in Programming
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
380
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
440
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
240
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
190
Web Framework Benchmark Battle 2026, Any%
a_matsuda
2
2.5k
Railsバージョンを4倍にした話
optim
0
460
dotNET_vulnclicker_intro.pdf
deka_morita
0
150
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
220
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
280
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
5.2k
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
190
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
180
Featured
See All Featured
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
710
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
710
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
Into the Great Unknown - MozCon
thekraken
41
2.8k
Claude Code のすすめ
schroneko
67
230k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
420
Thoughts on Productivity
jonyablonski
76
5.4k
Designing Powerful Visuals for Engaging Learning
tmiket
1
610
エンジニアに許された特別な時間の終わり
watany
109
250k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Transcript
Desmitificando Clean Architecture en Android Armando Picón Mobile Engineer at
Cornershop/Uber @devpicon https://linktr.ee/devpicon
Algunas verdades sobre Clean Architecture - Es el título de
un libro y un post de Uncle Bob - No es una arquitectura - Reúne una serie de principios comunes desde el análisis de múltiples arquitecturas - Se fundamenta en la aplicación de principios SOLID - La capa de Dominio (Domain) es el punto central
¿Qué es una arquitectura?
¿Qué es una arquitectura? - Estructurar un proyecto - Distribuir
componentes - Separar de responsabilidades - Está sujeta a diversos factores
¿Podemos estructurar un proyecto siguiendo la guía de Clean Architecture?
¿Podemos estructurar un proyecto siguiendo Clean Architecture? - Sí -
Separation of concerns (separación de intereses) - Testing - El dominio como el centro de todo
Frameworks and drivers Interface Adapters Business Rules (Interactors) Domain Logic
UI Data sources ViewModel Repository Use Cases Entities
Frameworks and drivers Interface Adapters Business Rules (Interactors) Domain Logic
UI Data sources ViewModel Repository Use Cases Entities Dependency rule
Frameworks and drivers Interface Adapters Business Rules (Interactors) Domain Logic
UI Data sources ViewModel Repository Use Cases Entities Data flow
Presentation Domain Data - Compose - View-based system (XML) -
UI Components (Activities, Fragments, Composables, etc) - Notifications - ViewModels Modules
Presentation Domain Data - Compose - View-based system (XML) -
UI Components (Activities, Fragments, Composables, etc) - Notifications - ViewModels Modules - Room - Networking library (Retrofit, Ktor, Volley, etc) - SQLite - ContentProviders - Firebase - SharedPreferences
:Presentation :Domain :Data - Compose - View-based system (XML) -
UI Components (Activities, Fragments, Composables, etc) - Notifications - ViewModels Modules - Room - Networking library (Retrofit, Ktor, Volley, etc) - SQLite - ContentProviders - Firebase - SharedPreferences - Datasources - Repository implementations - UseCases / Interactor - Entities - Repository abstraction
Presentation Domain Data
Presentation Domain Data Abstraction (Interface) Concrete implementation (Class)
Show me the code…
Nos vemos en la próxima! @DevPicon