Arquitetura para iniciantes — Vamos desmistificar!

Aline Souza
Aline Souza
Published in
3 min readJun 10, 2021

Uma das maiores dificuldades que eu tive ao começar no desenvolvimento mobile foi entender os artigos técnicos e saber como aplicá-los. Eu não conseguia ver relação do que eu estava lendo com o que eu fazia no dia-a-dia.

A verdade é que artigos técnicos (e livros também) muitas vezes não são escritos para iniciantes. Mas como é possível aprender a desenvolver desde o início seguindo os padrões de qualidade, se nem ao menos entendemos o que querem nos passar? Eu me sentia muito perdida.

E na realidade, quando me perguntavam sobre arquitetura eu nem sequer conseguia entender o que queriam, de fato, dizer com isso.

Antes mesmo de compreender o que seria essa tal "arquitetura" que tanto exigiam, choveu uma sopa de letrinhas que me confundiu ainda mais. Termos como SOLID, Clean Architecture, MVVM, MVP, etc. entraram na minha mente fazendo eu me sentir cada dia mais incapaz de aprender tudo isso. Quando falavam de Thread então, minha vontade era de desistir...

E aí, conseguiu se reconhecer nesse relato? Se sim, essa série de artigos será para você. Hoje, eu sou uma das pessoas que faz a etapa da entrevista técnica onde trabalho e isso me trouxe uma visão clara que: muitos desenvolvedores jr. estão passando pela mesma dor que passei alguns anos atrás.

Você pode me perguntar: Aline, é extremamente necessário um desenvolvedor júnior saber sobre arquitetura? Não. Isso com certeza será exigido bem mais de alguém pleno e sênior do que de um júnior. Mas, se você quer desde já, construir aplicativos escaláveis, testáveis e principalmente, se destacar no mercado de trabalho, por quê não?

A ideia dessa série de artigos é abordar os princípios da arquitetura Clean utilizando MVVM, princípios SOLID, lifecycle de Android e testes (espresso e unitários) de uma forma muito simplista para que até mesmo os mais iniciantes consigam compreender a razão de utilizarmos e quais seus impactos.

Para isso, utilizaremos o projeto que criei no Github chamado BaseDroid, onde passarei por cada uma das camadas explicando com exemplos do nosso dia a dia.

Nesse projeto base você terá acesso:

Linguagem Kotlin; Arquitetura MVVM; Princípios de SOLID; Clean Architecture; Injeção de dependência com Koin; Implementação de Coroutines; Exemplo de Testes unitários com Mockito; Exemplo de Testes de UI com Espresso e Robot Pattern;

E aí, complicou? Podem ficar tranquilos que veremos cada um dos tópicos acima da forma menos "técnica" possível.

Atenção seniores e especialistas de plantão: Já peço desculpas se eu usar alguma analogia que possa ficar um tanto quanto "incompleta" nas minhas explicações. A intenção será de única e exclusivamente introduzir boas práticas de desenvolvimento para quem está iniciando. Não me julguem :hehe:

E aí, bora desmistificar essa sopa de letrinhas juntos? O primeiro artigo da série já está em produção e será disponibilizado na terça-feira.

Para conseguir acompanhar os próximos artigos, o ideal é que clone/baixe o repositório abaixo, que será a base dos nossos estudos:

Dúvidas e/ou sugestões? Me chame no LinkedIn.

Code Like a Girl 👧

--

--

Aline Souza
Aline Souza

Desenvolvedora Android, apaixonada por tecnologia, e aprendendo todo dia um pouco mais! Code like a girl :)