Base de conhecimento completa sobre Java para iniciantes em português.
Bem-vindo ao Java Labs. Este repositório foi organizado para ensinar Java de forma clara, prática e progressiva, combinando notas em Markdown, exemplos executáveis e desafios para consolidar o aprendizado.
As notas deste repositório são publicadas no site do Caramelo Labs.
- Conteúdo didático em português (pt-BR)
- Explicações claras e acessíveis
- Exemplos práticos e funcionais
- Exercícios para fixação
- Projetos para aplicar os conceitos em contexto real
- Recursos adicionais curados
| Tópico | Descrição |
|---|---|
| Fundamentos | Ambiente, introdução, sintaxe, operadores e controle de fluxo |
| Java | Orientação a objetos, Java Core e Java moderno |
| Spring | Spring Web, Spring Data e Spring Security |
| Roadmap | Trilha de estudos para backend com Java |
| Recursos | Materiais complementares para aprofundar |
java-labs/
├── notes/ → Anotações em Markdown puro (publicadas no site do Caramelo Labs)
├── sidebar.json → Seções da barra lateral no site
├── examples/ → Exemplos de código, exercícios e projetos práticos
└── .github/ → Workflows, templates e guias de contribuição
Este repositório contém apenas conteúdo - não há build, dependências ou configuração de site. A estrutura web (Astro + Starlight) vive no repositório hub labs, que busca as notas daqui a cada atualização e publica o site.
Se você está começando agora, este fluxo funciona bem:
- Leia as notas de
notes/Fundamentos/na ordem numérica (ou pelo site) - Execute o exemplo Hello World
- Resolva os desafios em examples/exercises.md
- Escolha um projeto em examples/projects.md
- Consulte o roadmap e os recursos adicionais para aprofundar
cd examples/01-HelloWorld
javac HelloWorld.java
java HelloWorldRecomendação de ambiente: JDK 17 LTS ou superior (java --version, javac --version).
As notas em notes/ são Markdown puro, sem frontmatter:
- A primeira linha da nota deve ser o título:
# Título da Nota - Use prefixo numérico no nome do arquivo para controlar a ordem na barra lateral:
01-ambiente.md,02-introducao.md - Agrupe por tema em subpastas (
Fundamentos/,Java/,Spring/) - Imagens ficam junto das notas (ex:
notes/secao/assets/img.png) e são referenciadas com caminho relativo: - Links para outras notas do site usam o caminho completo:
/labs/java/<secao>/<nota>/
Ao criar uma nova subpasta de tema, adicione a seção correspondente em sidebar.json.
Contribuições são muito bem-vindas. Você pode ajudar com:
- Melhorias nas notas de
notes/ - Novos exemplos em
examples/ - Novos exercícios em
examples/exercises.md - Novos projetos em
examples/projects.md - Curadoria de recursos em
notes/recursos.md
Antes de abrir um PR, leia o Guia de Contribuição.
Este projeto está sob a licença definida em LICENSE.