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
Arquitetura para projetos Android
Search
José Caique Oliveira
June 03, 2017
Programming
1
210
Arquitetura para projetos Android
Slides utilizados na apresentação sobre arquitetura no android day aracaju
José Caique Oliveira
June 03, 2017
Tweet
Share
More Decks by José Caique Oliveira
See All by José Caique Oliveira
Kotlin Flow
jcaiqueoliveira
0
110
Coroutines And Flow
jcaiqueoliveira
2
100
Testing your app
jcaiqueoliveira
0
270
Modularizando seu app
jcaiqueoliveira
0
69
Nova Api de Localização Android
jcaiqueoliveira
0
73
Arquitetura para android
jcaiqueoliveira
6
320
Kotlin por onde começar?
jcaiqueoliveira
1
89
Introdução ao Android
jcaiqueoliveira
1
80
Kotlin 1.1
jcaiqueoliveira
0
120
Other Decks in Programming
See All in Programming
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
9
1.5k
React 19アップデートのために必要なこと
uhyo
8
1.6k
CDKを使ったPagerDuty連携インフラのテンプレート化
shibuya_shogo
0
120
GoとPHPのインターフェイスの違い
shimabox
2
220
Domain-Driven Design (Tutorial)
hschwentner
13
22k
AIレビュー導入によるCIツールとの共存と最適化
kamo26sima
1
680
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
290
新宿駅構内を三人称視点で探索してみる
satoshi7190
2
130
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
510
SwiftUI Viewの責務分離
elmetal
PRO
2
280
Ça bouge du côté des animations CSS !
goetter
2
160
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
830
Featured
See All Featured
Gamification - CAS2011
davidbonilla
80
5.2k
Automating Front-end Workflow
addyosmani
1369
200k
Visualization
eitanlees
146
15k
Mobile First: as difficult as doing things right
swwweet
223
9.5k
Designing Experiences People Love
moore
140
23k
Thoughts on Productivity
jonyablonski
69
4.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
260
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Become a Pro
speakerdeck
PRO
26
5.2k
Optimizing for Happiness
mojombo
377
70k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Transcript
Arquitetura para projetos Android
Caique Oliveira Desenvolvedor Android @Stone
Trilhando uma jornada no Android
None
None
None
Eis que nasce sua aplicação
Como você pensa que foi feito
Como realmente é
None
Características ▷ Depende de frameworks ▷ Aplicação não portável ▷
View Inteligente ▷ God Model
Acoplamento
Problemas do acoplamento ▷ Difícil de manter ▷ Difícil de
testar ▷ Difícil de escalar
None
Problemas do acoplamento ▷ De quem realmente é a culpa
pelo problema? ▷ Como corrigir? ▷ Como garantir que não criou outros erros?
Como posso desacoplar minha aplicação?
Arquitetura de software ▷ Organização em camadas ▷ Evita dependências
▷ Escalável, Testável e de fácil entendimento
MVVM MVC VIPER Hexagonal MVP Etc
Arquitetura Limpa (aka clean)
None
None
Arquitetura Limpa ▷ Frameworks são detalhes(rest,banco,etc) ▷ Casos de Usos
são essenciais ▷ Entidades são essenciais
Arquitetura Limpa
O que se busca ▷ Depender o mínimo possível de
framework ▷ Depender de comportamentos(interface) ▷ Núcleo Testável
Como começar?
Defina Fronteiras
None
“ O núcleo da sua aplicação é importante o restante
deve ser descartável
“ Seu Json não é a sua informação
Conecte suas camadas ▷ Callbacks ▷ Programação reativa
None
None
Organize seus pacotes
Funcionalidade por pacote ▷ Fácil navegação ▷ Intenção explícita ▷
Fácil para achar dependências
Dificuldades ▷ Separar em camadas ▷ Escreve-se mais códigos ▷
Necessário cuidado com excesso de arquitetura
Concluindo ▷ Não há uma fórmula mágica ▷ Busque simplificar
seu projeto
Obrigado Slack Androiddevbr: caique jcaique.jc@gmail.com @jc_hobbit
Referências https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-ar chitecture.html https://speakerdeck.com/ubiratansoares/escaping-from-the-fr amework https://fernandocejas.com/2014/09/03/architecting-android-t he-clean-way/ https://vimeo.com/43612849