Este repositório serve como meu guia de estudos e portfólio de evolução na stack Java. O planejamento é dividido em fases fundamentais, indo do básico ao avançado, com foco no mercado atual.
📺 Baseado no Roadmap Java 2026 (Visão de Longo Prazo e Mercado).
📺 Baseado no Roadmap de Matheus Leandro Ferreira. 🔗 Acesse o Mapa Mental Oficial no Figma aqui
Fase Atual: 1 - Fundamentos Sólidos (Java Core)
Tópico em foco: Essencial para Entrevistas: Collections: List (ArrayList), Set e Map (HashMap).
| Fase | Pilar | Prazo Est. | Início | Última Lição | Status |
|---|---|---|---|---|---|
| 1 | Fundamentos Sólidos (Sintaxe, OO, Lógica) | 1-2 Meses | 31/12/25 | 07/01/26 | 🚀 Em progresso |
| 2 | Ecossistema Spring (Boot, Web, Data) | 2-3 Meses | --/--/-- | --/--/-- | ⏳ Em breve |
| 3 | Backend Profissional (APIs, Erros, Paginação) | 2 Meses | --/--/-- | --/--/-- | ⏳ Em breve |
| 4 | Engenharia de Dados (SQL, Banco, Migrations) | 2 Meses | --/--/-- | --/--/-- | ⏳ Em breve |
| 5 | Arquitetura e Carreira (Clean Code, Testes) | 3 Meses | --/--/-- | --/--/-- | ⏳ Em breve |
⏳ Em breve | 🚀 Em progresso | ✅ Concluído
O foco aqui é lógica de programação e entender como a linguagem funciona (Pilar 1 do Roadmap).
- Setup: JDK 21+ (LTS) e IntelliJ IDEA.
- Básico: Tipos Primitivos e Wrappers (int vs Integer).
- Controle de Fluxo:
if/else,switchmoderno, loops (for,while). - Orientação a Objetos Real:
- Classes, Objetos e Construtores.
- Encapsulamento e Modificadores de Acesso.
- Herança e Polimorfismo.
- Interfaces e Classes Abstratas.
- Essencial para Entrevistas:
- Collections: List (ArrayList), Set e Map (HashMap).
- Strings: Imutabilidade e Manipulação.
- Java Moderno: Noções básicas de Streams e Lambdas.
- Profissionalismo:
- Tratamento de Exceções (
try-catch,try-with-resources). - Debugging básico no IntelliJ.
- Estudar JVM.
- Tratamento de Exceções (
Aprendendo a ferramenta principal de trabalho (Pilar 2 do Roadmap).
- Spring Boot Core: Injeção de Dependência e Container.
- Configuração:
application.propertiese Profiles. - Spring Web: Criação de APIs RESTful.
- Spring Data JPA: Repositories e Entidades.
- Validação: Bean Validation.
- Segurança: Spring Security Básico.
Deixando o código mais robusto e pronto para produção (Pilar 3 do Roadmap).
- Design de API: Verbos HTTP, Status Codes, Versionamento.
- Qualidade: Tratamento Global de Erros (
@ControllerAdvice). - Comunicação: Consumo de APIs externas.
- Documentação: Swagger/OpenAPI.
A base de dados sustenta tudo (Pilar "Dados" do Roadmap).
- SQL: Consultas complexas e Joins.
- Performance: Índices e N+1 Problem.
- Transações: ACID e Controle de Concorrência.
- Migrações: Flyway ou Liquibase.
Visão de longo prazo e escala (Pilar 4 do Roadmap).
- Arquitetura: Camadas, Clean Architecture e Hexagonal.
- Qualidade de Código: Princípios SOLID e Clean Code.
- Testes: Unitários (JUnit 5 + Mockito) e Integração.
- Carreira: Git Flow, GitHub, Docker básico e Inglês Técnico.
Estes projetos aplicam os conceitos de forma acumulativa:
- Gerenciador de Tarefas (Console): Foco em Lógica, Listas e Loops (Sem banco).
- API de Catálogo de Produtos: CRUD completo com Spring Boot e H2.
- Sistema de Agendamentos: Foco em validações e regras de negócio.
- Projeto Final (Clone Uber/iFood simplificado): Arquitetura Limpa, Segurança JWT e Banco Postgres.
(Use este espaço para anotar insights rápidos)
- Dica 1: O Java é fortemente tipado, atenção aos tipos!
- Dica 2: "Código limpo é código que parece ter sido escrito por alguém que se importa."
Para manter a didática adequada ao meu nível atual, utilizo este prompt:
# Contexto
Atue como um Professor de Programação Java focado em **iniciantes**. Estou aprendendo os fundamentos e preciso de explicações didáticas, pacientes e com muitos exemplos simples.
# Objetivo
Estou na fase **[1. Fundamentos Sólidos]** e o tópico de hoje é **Orientação a Objetos Real:** Interfaces e Classes Abstratas.
Quero entender como isso funciona e como escrever o código básico corretamente.
# Regras de Interação (FLUXO OBRIGATÓRIO)
Você NÃO deve entregar toda a resposta de uma vez. Você deve dividir sua resposta em duas fases e aguardar minha confirmação entre elas.
**FASE 1: A Teoria (Entregue isso primeiro)**
1. 🧠 EXPLICAÇÃO SIMPLES (Analogia): Explique o conceito comparando com algo do dia a dia.
2. 💡 PARA QUE SERVE?: Exemplo prático de uso.
3. 💻 COMO SE ESCREVE (Sintaxe): Estrutura básica do código com comentários.
4. 🚫 ERRO COMUM: Um erro clássico e como corrigir.
> **FIM DA FASE 1:** Ao final desta etapa, pergunte se eu entendi a explicação e se posso avançar para o exercício. **PARE AQUI e aguarde minha resposta.**
**FASE 2: A Prática (Entregue apenas após meu "OK")**
5. ⚔️ EXERCÍCIO RÁPIDO:
- Desafio pequeno (Input/Output esperado).
- Dica do comando.
6. ❓ QUIZ RÁPIDO: 3 perguntas de "Verdadeiro ou Falso".
**FASE 3: Correção (Após eu enviar a resposta)**
- Corrija meu exercício e o quiz.
- Pergunte se podemos seguir para o próximo tópico.
# Restrições
- Use Português do Brasil.
- Evite termos complexos de arquitetura agora.
- O foco é lógica e funcionamento básico.
- **IMPORTANTE:** Respeite rigorosamente a pausa entre a FASE 1 e a FASE 2.