Exercícios: Arquitetura e Boas Práticas 🏗️
Instruções
Aplique padrões de design para criar códigos mais limpos e testáveis.
🟢 Nível: Básico
- Refatoração: Mova sua struct principal para uma pasta chamada
entities. - Interface: Crie uma interface que defina as operações básicas de persistência de um objeto seu (ex:
Salvar,BuscarPorID).
🟡 Nível: Intermediário
- Injeção: Crie uma struct
Gestorque possua um campo que é a interface do exercício anterior. Crie uma funçãoNewGestorpara injetar a implementação. - Internal: Mova sua lógica de banco de dados para uma pasta
internal/repositorye verifique como as permissões de acesso funcionam entre pacotes.
🔴 Nível: Desafio
5. Mock Manual: Escreva um teste para o seu Gestor (do exercício 3). No teste, crie uma struct "fake" que implementa a interface de repositório (sem usar banco real) e injete-a no gestor. Verifique se o gestor chama os métodos corretamente.
📚 Gabarito e Soluções Comentadas
Gabarito Explicado
### Questão 1: Refatoração **Resposta Comentada:** - **Fundamentação:** No contexto de **Arquitetura e Boas Práticas ️**, o conceito abordado (Refatoração) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 2: Interface **Resolução e Implementação:**// Estrutura de implementação recomendada para Interface
// Validação de regras de negócio e retorno consistente