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
230
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
120
Coroutines And Flow
jcaiqueoliveira
2
110
Testing your app
jcaiqueoliveira
0
300
Modularizando seu app
jcaiqueoliveira
0
72
Nova Api de Localização Android
jcaiqueoliveira
0
85
Arquitetura para android
jcaiqueoliveira
6
320
Kotlin por onde começar?
jcaiqueoliveira
1
92
Introdução ao Android
jcaiqueoliveira
1
83
Kotlin 1.1
jcaiqueoliveira
0
130
Other Decks in Programming
See All in Programming
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
310
エンジニアインターン「Treasure」とHonoの2年、そして未来へ / Our Journey with Hono Two Years at Treasure and Beyond
carta_engineering
0
480
alien-signals と自作 OSS で実現する フレームワーク非依存な ロジック共通化の探求 / Exploring Framework-Agnostic Logic Sharing with alien-signals and Custom OSS
aoseyuu
3
5.4k
CSC509 Lecture 11
javiergs
PRO
0
280
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
370
Webサーバーサイド言語としてのRustについて
kouyuume
1
5.1k
CSC305 Lecture 11
javiergs
PRO
0
320
CSC305 Lecture 10
javiergs
PRO
0
330
Introducing RemoteCompose: break your UI out of the app sandbox.
camaelon
2
430
Module Proxyのマニアックな話 / Niche Topics in Module Proxy
kuro_kurorrr
0
1.3k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
490
三者三様 宣言的UI
kkagurazaka
0
340
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
BBQ
matthewcrist
89
9.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6k
Embracing the Ebb and Flow
colly
88
4.9k
How to Ace a Technical Interview
jacobian
280
24k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Producing Creativity
orderedlist
PRO
348
40k
Faster Mobile Websites
deanohume
310
31k
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