https://github.com/joaopedroangelo/java-backend-roadmap
Guia de estudos flexível e abrangente para auxiliar futuros desenvolvedores backend Java
https://github.com/joaopedroangelo/java-backend-roadmap
java roadmap
Last synced: 10 months ago
JSON representation
Guia de estudos flexível e abrangente para auxiliar futuros desenvolvedores backend Java
- Host: GitHub
- URL: https://github.com/joaopedroangelo/java-backend-roadmap
- Owner: joaopedroangelo
- License: apache-2.0
- Created: 2024-01-10T10:20:49.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-10T19:15:08.000Z (almost 2 years ago)
- Last Synced: 2025-04-22T11:43:08.395Z (about 1 year ago)
- Topics: java, roadmap
- Homepage:
- Size: 3.18 MB
- Stars: 9
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RoadMap para Desenvolvedor Backend Java
> O guia oferece um conjunto de tópicos e habilidades essenciais, desde os fundamentos do Java até o desenvolvimento de microsserviços, práticas de design avançadas, integração na nuvem e estratégias de escalabilidade.
---
# Sumário
| ESSENCIAL | APROFUNDAMENTO | TÓPICOS AVANÇADOS |
| :---: | :---: | :---: |
| Java Fundamentos | Princípios de Design e Padrões | Integração e Entrega Contínua |
| Programação Orientada a Objetos (POO) | Arquitetura de Software | Escalabilidade e Contêineres |
| Banco de Dados | | Mensageria |
| Integrar aplicação Java com Banco de Dados | | Desenvolvimento na Nuvem |
| Spring Framework | | |
| Testes de software | | |
---
## Etapa Inicial

### 01 - Java Fundamentos
- [Artigo Alura](https://www.alura.com.br/artigos/java)
- [WikipédiaEN - Java](https://en.wikipedia.org/wiki/Java_(programming_language))
- [Repositório com questões resolvidas](https://github.com/joao-pedro-angelo/JavaSolvedProblems)
- [Site - Estrutura de dados e Algoritmos](https://joaoarthurbm.github.io/eda/conteudo/)
### 02 - Programação Orientada a Objetos (POO)
- [Livro - Java Como Programar](https://www.amazon.com.br/Java%C2%AE-como-programar-Paul-Deitel/dp/8543004799)
- [Resumo.md - Revisão Geral Iniciante](/revisaoConceitosIniciais.md)
- [Repositório - Consumir API](https://github.com/joao-pedro-angelo/DadosCamaraDeputados)
- [Repositório com CRUD Completo](https://github.com/joao-pedro-angelo/ClassicBank)
### 03 - Banco de Dados
- [Artigo Aura](https://www.alura.com.br/artigos/banco-de-dados)
- [Livro - Sistemas de Banco de Dados](https://www.amazon.com.br/Sistemas-banco-dados-Ramez-Elmasri/dp/8579360854)
- [Site - SQLBolt.com](https://sqlbolt.com/)
- [Livro - Banco de Dados NoSQL](https://www.casadocodigo.com.br/products/livro-nosql)
### 03.2 - Integrar aplicação Java com Banco de Dados
- [Artigo Alura - API JDBC](https://www.alura.com.br/artigos/conhecendo-o-jdbc)
- [Repositório - CRUD com API JDBC](https://github.com/joao-pedro-angelo/ClassicBank)
- [Artigo WikipédiaEN - JPA](https://en.wikipedia.org/wiki/Jakarta_Persistence)
- [Repositório - CRUD com JPA Hibernate](https://github.com/joao-pedro-angelo/JPA-Hibernate)
### 04 - Spring Framework
- [Site Oficial](https://spring.io/projects)
- [Introdução - WikipédiaEN](https://en.wikipedia.org/wiki/Spring_Framework)
- [Livro - Vire o jogo com Spring Framework](https://www.casadocodigo.com.br/products/livro-spring-framework)
### 04.2 - Spring em Prática
- [Repositório - Musicalizou Rest API](https://github.com/joao-pedro-angelo/Musicalizou)
- [Desafio Vaga - Rest API](https://github.com/joao-pedro-angelo/PicPaySimplificado)
### 05 - Testes de software
- [Artigo - Tipos de Testes](https://www.alura.com.br/artigos/tipos-de-testes-principais-por-que-utiliza-los)
- [Artigo - Melhores práticas em testes](https://medium.com/@pablodarde/testes-unit%C3%A1rios-com-tdd-test-driven-development-657f3dadad06)
- [Artigo - TDD](https://tdd.caelum.com.br/)
- [Repositório - Testes Controllers](https://github.com/joao-pedro-angelo/Musicalizou/tree/master/src/test/java/com/music/review/app/controllers)
---
## Etapa Intermediária

### 06 - Princípios de Design e Padrões
- [Repositório - Design Orientado a Objetos](https://github.com/joao-pedro-angelo/PSOFT-UFCG)
- [Artigo - SOLID](https://www.alura.com.br/artigos/solid)
- [Site - Guru da refatoração](https://refactoring.guru/design-patterns)
- [Livro - Gang of Four](https://www.amazon.com.br/Padr%C3%B5es-Projetos-Solu%C3%A7%C3%B5es-Reutiliz%C3%A1veis-Orientados/dp/8573076100)
### 07 - Arquitetura de Software
- [Texto.md - Arquiteto de Software](/oArquiteto.md)
- [Texto.md - Arquitetura Java](/JitCompiler.md)
- [Site - Arquitetura de Software](https://joaoarthurbm.github.io/arquitetura-de-software/conteudo/)
- [Artigo - Martin Fowler](https://martinfowler.com/architecture/)
- [Anotações.md - Arquitetura Limpa](/ArquiteturaLimpa.md)
---
## Etapa Avançada

### 08 - Integração e Entrega Contínua
> Em breve serão inseridos links aqui
### 09 - Escalabilidade e Contêineres
> Em breve serão inseridos links aqui
### 10 - Mensageria
> Em breve serão inseridos links aqui
### 11 - Desenvolvimento na Nuvem
> Em breve serão inseridos links aqui
---
# Conclusão
O guia tem o intuito de auxiliar pessoas que já estudam ou que pretendem estudar o ecossistema Java, mas não sabem muito bem qual caminho seguir.
Não há uma ordem certa que se deva seguir, penso que a melhor forma de utilizar este repositório é compreendendo quais os tópicos necessários para que uma pessoa programadora seja considerada um dev Java.
*Bons estudos!*