← Voltar ao início
🤖 Clean Architecture e Separação em Camadas
📚 Roteiro de Estudos
Semana 1 e 2: Fundamentos de Clean Architecture e Separação em Camadas
- Objetivos:
- Entender fundamentos da arquitetura limpa (Clean Architecture)
- Compreender separação clara entre apresentação, domínio e infraestrutura.
- Passos:
- Assista vídeos introdutórios sobre Clean Architecture do Uncle Bob:
- Recomendações em Português:
- Leia resumos curtos no Medium:
- Aprenda na prática organizando um projeto simples em 3 camadas: Apresentação (UI/API), Domínio (Regras de Negócio) e Infraestrutura (banco de dados, chamadas HTTP).
Semana 3: Princípios SOLID
- Objetivos:
- Começar aprimorando qualidade e legibilidade do código com SOLID, especialmente SRP e DIP.
- Passos:
- Assista esses vídeos introdutórios:
- Foque principalmente em:
- SRP (Single Responsibility Principle — Responsabilidade Única)
- DIP (Dependency Inversion Principle — Inversão de Dependência)
- Crie pequenos exemplos de código, aplicando explicitamente SRP e DIP na sua linguagem preferida.
Semana 4: Injeção de Dependências (Dependency Injection)
- Objetivos:
- Entender conceito fundamental de DI e começar a aplicá-lo sem necessariamente usar frameworks.
- Passos:
- Vídeos recomendados:
- Leia artigos curtos:
- Implemente DI simples na mão, sem biblioteca/framework, para entender a lógica e prática.
Semana 5: Domain-Driven Design Básico (DDD)
- Objetivos:
- Entender conceitos básicos: Entidade, Value Object, Agregados, Serviços de Domínio.
- Passos:
- Vídeos introdutórios sobre DDD:
- Artigos no Medium:
- Modele um domínio básico de negócio utilizando os conceitos aprendidos.
Semana 6: Design Patterns
- Objetivos:
- Identificar e aprender principais padrões: Factory, Strategy, Adapter.
- Passos:
- Vídeos introdutórios:
- Material escrito:
- Implemente exemplos pequenos usando esses padrões na linguagem que você conhece (Java, JavaScript, C#, Python, etc.).
📌 Bibliografia recomendada
- Clean Architecture
- Livro: "Arquitetura Limpa" (Robert C. Martin)
- SOLID
- Livro: "Código Limpo" (Clean Code) - Robert C. Martin
- Livro: "Clean Architecture" - Robert C. Martin (aborda SOLID junto com arquitetura)
- Injeção de Dependência
- Livro: "Dependency Injection Principles, Practices, and Patterns" - Mark Seemann, Steven van Deursen (avançado mas excelente)
- Artigos médium sugeridos acima já são suficientes
- Domain-Driven Design (DDD): básico
- Livro curto: "DDD Distilled" - Vaughn Vernon (aborda conceitos essenciais)
- Livro original completo é recomendado futuramente: "Domain-Driven Design" - Eric Evans (apenas se aprofundar muito depois)
- Design Patterns
- Livro clássico com exemplos interessantes para referência futura: "Head First Design Patterns" – Freeman & Freeman
- Livro Original Gang of Four (GoF) (mais conceitual e avançado)
🔖 Dicas adicionais
- Use um repositório GitHub ou GitLab para praticar cada conceito isoladamente em mini-projetos.
- Revise semanalmente; uma revisão constante ajuda na consolidação.
- Não apenas siga tutoriais, mas tente relacionar conceitos diretamente com códigos e sistemas reais que você já trabalha ou já criou.