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
Desmitificando Clean Architecture en Android
Search
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
67
Gemini in Android Studio
devpicon
0
2.8k
Scalable Depency Management with Version Catalog
devpicon
0
69
StateFlow y SharedFlow ¿el fin de LiveData?
devpicon
0
330
Introdução ao Kotlin Flow
devpicon
0
140
Introducción a Kotlin Flow
devpicon
0
150
Introduction to Kotlin Flow
devpicon
0
280
Coroutines on the way!
devpicon
0
93
The Journey to Reach a Good Architecture
devpicon
0
200
Other Decks in Programming
See All in Programming
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
1.1k
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
1
280
yield再入門 #phpcon
o0h
PRO
0
840
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
440
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
0
120
今さら聞けない .NET CLI
htkym
0
160
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
160
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
120
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
0
180
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
2
1.3k
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
330
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
3.2k
Featured
See All Featured
The SEO identity crisis: Don't let AI make you average
varn
0
520
Are puppies a ranking factor?
jonoalderson
1
3.7k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
670
[SF Ruby Conf 2025] Rails X
palkan
2
1.2k
Prompt Engineering for Job Search
mfonobong
0
390
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Product Roadmaps are Hard
iamctodd
55
12k
Scaling GitHub
holman
464
140k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
650
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
480
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
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