Meu espaço de testes, estudos e experimentos de programação.
Este repositório reúne os pequenos projetos, desafios e provas de conceito que venho desenvolvendo enquanto estudo. Aqui não tem sistema gigante nem produto pronto — é treino puro: lógica, back-end, front-end, APIs, testes, um pouco de tudo. A ideia é simples: aprender fazendo, documentar o processo e ir evoluindo projeto por projeto.
Cada linha da tabela abaixo é um projeto separado, com link para o repositório correspondente.
| Projeto | Tecnologias / Conceitos | Descrição |
|---|---|---|
| Java Forca (CLI) | Java 21 Maven POO DTO (records) Jackson Consumo de dados via HTTP HttpClient Collections (HashMap/List) |
Jogo da forca via linha de comando. As palavras e categorias ficam em um arquivo JSON próprio, hospedado em um GitHub Gist, e são buscadas via HTTP em tempo de execução. O JSON é desserializado em DTOs (records) com Jackson. A lógica do jogo usa um HashMap para mapear a posição de cada letra na palavra secreta, controlando tentativas, acertos e derrota/vitória. |
| Dama - Lei da Maioria | Java POO Matrizes (arrays 2D) Recursão Backtracking Random Scanner |
Simulação da regra da maioria (captura obrigatória) do jogo de damas. O usuário informa o tamanho do tabuleiro (N x N), gerado aleatoriamente com no máximo 25% de peças pretas, 25% de brancas e o restante vazio. Para cada cor, o programa usa busca recursiva com backtracking para simular todas as sequências possíveis de capturas em cadeia e retornar a jogada com o maior número de capturas, junto com a posição (0-indexed) da peça inicial. |
| Contact Manager API | Java 21 Spring Boot Spring Data JPA H2 Database Bean Validation JUnit 5 Mockito Maven API REST |
API REST para gerenciamento de contatos (CRUD completo), estruturada em camadas (Controller → Service → Repository). Usa Spring Data JPA com banco H2 em memória, validação de entrada com Bean Validation e tratamento centralizado de exceções via @RestControllerAdvice. Conta com testes unitários usando JUnit 5 e Mockito para isolar a camada de negócio. |
Java 21MavenPOODTO (records)JacksonConsumo de dados via HTTPHttpClientCollections (HashMap/List)Matrizes (arrays 2D)RecursãoBacktrackingRandomScannerSpring BootSpring Data JPAH2 DatabaseBean ValidationJUnit 5MockitoAPI REST
Repositório em constante atualização — sempre que um novo projeto sai do forno, ele entra na tabela. 🚀