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
84
Coroutines And Flow
jcaiqueoliveira
2
88
Testing your app
jcaiqueoliveira
0
240
Modularizando seu app
jcaiqueoliveira
0
57
Nova Api de Localização Android
jcaiqueoliveira
0
58
Arquitetura para android
jcaiqueoliveira
6
310
Kotlin por onde começar?
jcaiqueoliveira
1
79
Introdução ao Android
jcaiqueoliveira
1
66
Kotlin 1.1
jcaiqueoliveira
0
110
Other Decks in Programming
See All in Programming
Snowflakeで眠ったデータを起こそう!
estie
0
120
SIMD Parallel Programming with the Vector API
josepaumard
0
190
Elm Form Validation
bkuhlmann
0
510
Micro Frontends for Java Microservices - Devnexus 2024
mraible
PRO
0
500
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
650
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
150
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
260
ONE WEDGE_company_guide
1wedge_one
0
490
Zero Waste, Radical Magic, and Italian Graft – Quarkus Efficiency Secrets
hollycummins
0
230
障害対応を起点としたもっといい開発と運用のサイクル作りのためにできること / Hatena Enginner Seminar #29
polamjag
0
230
Polars入門
daikikatsuragawa
1
100
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
43
19k
Featured
See All Featured
Ruby is Unlike a Banana
tanoku
96
10k
Scaling GitHub
holman
457
140k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
30
6k
Git: the NoSQL Database
bkeepers
PRO
422
63k
How GitHub (no longer) Works
holman
304
140k
The Brand Is Dead. Long Live the Brand.
mthomps
49
29k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
274
13k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Music & Morning Musume
bryan
41
5.6k
Product Roadmaps are Hard
iamctodd
44
9.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
357
22k
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
[email protected]
@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