Repositório que documenta minha evolução como desenvolvedor Java, desde os fundamentos da linguagem até a construção de aplicações utilizando Spring Boot, testes automatizados e boas práticas de desenvolvimento.
Este repositório reúne exercícios, desafios e projetos desenvolvidos durante minha formação em Java pela Digital Innovation One (DIO).
Mais do que armazenar atividades do curso, o objetivo é registrar minha evolução técnica, aplicar boas práticas de desenvolvimento e consolidar conhecimentos que serão utilizados na construção de aplicações back-end profissionais.
Ao longo da formação, o projeto evolui desde conceitos fundamentais da linguagem até tópicos avançados como Programação Orientada a Objetos, Persistência de Dados, APIs com Spring Boot, Testes Automatizados e Inteligência Artificial aplicada ao desenvolvimento.
- Tipos primitivos e operadores
- Entrada e saída de dados
- Estruturas condicionais
- Estruturas de repetição
- Algoritmos básicos
- Organização em pacotes
- Controle de fluxo
- Resolução de desafios práticos
- Boas práticas iniciais de codificação
- Exceções checked e unchecked
- Exceptions customizadas
- Validação de regras de negócio
- Refatoração de código
- Maven
- Gradle
- Gerenciamento de dependências
- Ciclo de vida de build
- Migração entre ferramentas
src/
├── fundamentos/
├── controle/
├── excecoes/
└── desafios/
build-tools/
├── maven/
└── gradle/
Durante os estudos também foram realizados experimentos de migração entre ferramentas de build:
- Conversão de dependências entre
pom.xmlebuild.gradle - Comparação entre XML e DSL
- Equivalência entre scopes e configurations
- Ajuste de plugins e configurações
- Comparação entre lifecycle do Maven e tasks do Gradle
|
|
|
| Módulo | Principais Implementações |
|---|---|
| Fundamentos | Cálculos matemáticos, manipulação de dados e algoritmos básicos |
| Controle | Menus interativos, validações, loops e estruturas condicionais |
| Exceções | CRUD com validações, exceptions customizadas e tratamento de erros |
| Desafios | Resolução de problemas propostos durante a formação |
| Maven | Estruturação de projetos e gerenciamento de dependências |
| Gradle | Automação de build e configuração utilizando DSL |
Projeto desenvolvido como aplicação prática de Programação Orientada a Objetos e Engenharia de Software.
Além da implementação completa do jogo em modo texto, o projeto foi construído utilizando uma abordagem incremental baseada em:
- User Stories;
- Sprints;
- ADRs (Architectural Decision Records);
- documentação contínua;
- arquitetura em camadas;
- backlog e roadmap.
| Área | Status |
|---|---|
| Fundamentos Java | ✅ Concluído |
| Controle de Fluxo | ✅ Concluído |
| Tratamento de Exceções | ✅ Concluído |
| Maven | ✅ Concluído |
| Gradle | ✅ Concluído |
| Programação Orientada a Objetos | ✅ Concluído |
| Inteligência Artificial Aplicada | ⏳ Planejado |
| Persistência de Dados | ⏳ Planejado |
| Spring Boot | ⏳ Planejado |
| Boas Práticas de Desenvolvimento | ⏳ Planejado |
| JUnit e Testes Unitários | ⏳ Planejado |
| Projeto Final | ⏳ Planejado |
- Fundamentos Java
- Estruturas de Controle
- Tratamento de Exceções
- Maven
- Gradle
- Migração Maven ↔ Gradle
- Programação Orientada a Objetos (POO)
- Inteligência Artificial Aplicada ao Desenvolvimento de Software
- Persistência de Dados com Java
- Ecossistema Spring para Desenvolvimento de APIs
- Boas Práticas de Desenvolvimento de Aplicações Java
- Testes Unitários com JUnit
- Projeto Final: Assistente Virtual Inteligente por Voz
Flávio Oliveira
Profissional com experiência em Tecnologia da Informação, Gestão de Projetos Educacionais e Marketing Digital, atualmente aprofundando conhecimentos em desenvolvimento de software com foco em Java e tecnologias para construção de aplicações back-end.
- GitHub: https://github.com/foliveiradark
- LinkedIn: https://www.linkedin.com/in/flaviocoliveira/
⭐ Este repositório é atualizado continuamente conforme avanço na formação e desenvolvo novos projetos.