CodeCraftMentor é um projeto de mentoria Java focado no desenvolvimento de novos desenvolvedores, com ênfase em construir código limpo e bem estruturado. O nome une "Code" (código), "Craft" (arte, cuidado, refinamento) e "Mentor" (orientação), refletindo o objetivo de ensinar boas práticas de programação e princípios sólidos, enquanto o desenvolvedor ganha confiança para entender e evoluir sistemas reais.
O projeto visa que o mentorado aprenda a:
- Compreender e aplicar conceitos básicos de Java
- Interpretar e transformar histórias de usuário em código funcional
- Escrever código limpo seguindo princípios do Clean Code
- Aplicar os princípios SOLID para um design orientado a objetos robusto
- Incorporar boas práticas de Object Calisthenics para melhorar a qualidade do código
- Escrever testes automatizados simples
- Java 17+
- Spring Boot (Web)
- Banco em memória H2
- Maven para gerenciamento de dependências
- JUnit e Mockito para testes
- Introdução ao Java e à estrutura do projeto
- Configuração do ambiente e do Spring Boot
- Criação do primeiro endpoint REST (
/ping
) - Compreensão da estrutura básica de um projeto Java web
- Introdução às histórias de usuário e sua importância
- Modelagem simples de entidades (Produto, Cliente)
- Implementação de endpoints para criação e consulta
- Validação básica e organização inicial do código
- Refatoração para código limpo (nomes claros, métodos pequenos, responsabilidade única)
- Introdução e aplicação dos princípios SOLID
- Separação clara entre camadas (controller, service, repository)
- Introdução a injeção de dependência e testes básicos
- Aplicar princípios de Object Calisthenics e Clean Code de forma prática
- Consumo da API GraphQL do projeto CustomerMentor
- Regras de Object Calisthenics aplicadas no projeto
- Revisão geral do código, reforçando os conceitos aprendidos
- Clone este repositório
- Execute com Maven:
mvn spring-boot:run