1. 1. Introdução
1.1. Apresentação Impacta
1.2. Apresentação Alunos e Professor
1.3. Sobre o Curso
1.4. Sobre o Projeto Prático
1.5. Setup do Ambiente
2. 4. Introdução ao Spring
2.1. Conceitos Java Enterprise
2.1.1. Principais Especificações
2.1.1.1. JEE
2.1.2. Principais Bibliotecas base
2.2. Spring Framework
2.2.1. IoC e DI
2.2.1.1. Conceitos e Exemplos
2.2.2. `Principais Projetos do Spring
2.2.3. Destacar Projetos Contemplados
3. 2. Aplicações Corporativas
3.1. Modelo de Aplicações Corporativas
3.1.1. Front-End x Backend
3.1.2. Full-Stack
3.2. Stacks Tecnológicas
3.2.1. Javascript
3.2.2. Microsoft
3.2.3. Java
3.2.4. Híbridas
4. 3. Ciclo de Vida de Desenvolvimento
4.1. Ciclo de Vida - Visão Dev
4.2. Ferramentas do Profissional Dev
4.2.1. IDE Corporativo
4.2.1.1. STS
4.2.2. Maven
4.2.3. Git e GitHub
4.2.3.1. Conta no Githbub
4.2.3.1.1. How-To
4.2.3.1.2. Acesso e Configuração
4.2.3.2. Conceitos e Propósito do Git
4.2.3.3. Instalação
4.2.3.4. Init e Sincronização
4.2.3.5. Git e Principais Comandos
4.2.3.6. Hello Git - Consolidação
5. OUTROS MODULOS/CURSOS
5.1. Java DevOps
5.1.1. IaC
5.1.2. CI /CD Conceitos
5.1.3. Ferramentas
5.1.3.1. GitHub Actions
5.1.3.1.1. Apresentação
5.1.3.1.2. Instalação e Configuração
5.1.3.1.3. Integração com GitHub
5.1.3.1.4. CI/CD Pipeline
5.2. Java Cloud
5.2.1. Netflix OSS
5.2.1.1. Service Discovery
5.2.1.2. API Gateway
5.2.1.3. Circuit Breaker
5.2.1.4. Load Balance
5.2.2. Cloud -> Serverless
5.3. Java Observabilty
5.3.1. ELK
5.4. Java Event-Driven Architecture
5.4.1. Conceitos Básicos
5.4.2. Assincronia
5.4.2.1. Sistemas de Mensageria
5.4.3. Tipos de Arquitetura
5.4.4. Event Stream e Filas
5.4.4.1. Kafka
5.4.4.2. AMQP
5.5. Java API
5.5.1. Conceitos
5.5.2. Open API x Closed API
5.5.3. Swagger e a Governança de APIs
5.5.3.1. Documentação de API
5.5.3.2. Conceitos
5.5.3.3. O Padrão YAML
5.5.3.4. Hello Swagger
5.5.4. Integração de Swagger com Spring
6. 5. Microserviços
6.1. Microserviços
6.1.1. Contexto
6.1.1.1. Monolitos x Microservice
6.1.1.2. SOA & Microservices
6.1.1.3. Exemplo
6.1.2. Springboot
6.1.2.1. Visão Geral
6.1.2.2. Hello Springboot
6.1.2.2.1. Initialzr
6.1.2.3. Apresentação do Projeto
6.1.2.3.1. Overview e Modulos
6.1.2.4. Pre-Requisitos
6.1.2.4.1. Protocolo HTTP
6.1.2.4.2. REST
6.1.2.5. Criando um Microserviço
6.1.2.5.1. Acessando Testando APIs e Microserviços
6.1.2.5.2. Book 1: Primeiro Microservico
6.1.2.5.3. Conceitos Principais (base Exercício)
6.1.2.5.4. Tratamento de Erros
6.1.2.6. Ferramentas de Apoio
6.1.2.6.1. DevTools
6.1.2.6.2. Metricas
6.1.3. Testando Microserviços
6.1.3.1. TDD
6.1.3.1.1. Conceitos
6.1.3.1.2. Junit e Mockito
6.1.3.1.3. Testando Microserviços
7. 7. Segurança das Aplicações
7.1. Principais Conceitos
7.2. Spring Security
7.2.1. Modelos e Métodos
7.2.2. Configurações
7.2.3. Definindo Usuário e Perfis
7.2.4. Segurança nas APIs
7.2.4.1. JWT
8. 8. Java e Docker
8.1. Conceitos
8.2. VM x Containeres
8.3. Docker
8.4. Dockerizando Aplicações
9. 6. Banco de Dados
9.1. SQL x NoSQL
9.1.1. Conceitos e Diferenças
9.1.2. Tipos de Bancos NoSQL
9.1.3. Aplicações e Indicações de Uso
9.2. Banco SQL
9.2.1. Fornecedores Principais
9.2.2. MySQL
9.2.2.1. Instalação
9.2.2.2. Configuração
9.2.2.3. Workbench - Navegação
9.2.3. JPA / Hibernate
9.2.3.1. Conceito de Camada De Persistência
9.2.3.2. Mapeamento Objeto x Relacional
9.2.3.2.1. Annotations
9.2.3.2.2. Configuração
9.2.4. Spring Data
9.2.4.1. Hello JPA
9.3. Banco NoSQL
9.3.1. Apresentação do MongoDB
9.3.2. Instalação e Configuração
9.3.3. Spring Data com MongoDB
9.3.3.1. Hello MongoDB