-
Variáveis e Tipagem: Estudo da tipagem estática e fortemente tipada de Java. Diferencie de linguagens dinamicamente tipadas como JavaScript.
-
Estruturas de Controle:
if-else
,switch-case
e laços de repetição (for
,while
,do-while
). -
Métodos e Arrays: Compreenda a definição e uso de métodos e a manipulação de arrays.
- Tic-Tac-Toe (Jogo da Velha): Um simples jogo da velha para aplicar o que foi aprendido sobre controle de fluxo e arrays.
- Material: JavaPoint - Tic-Tac-Toe Project
- Classes e Objetos: Entender como classes são "blueprints" para objetos.
- Construtores: Aprenda a inicializar objetos e usar construtores.
- Modificadores de Acesso: Controle o acesso aos atributos e métodos com
public
,private
, eprotected
.
- Herança, Polimorfismo e Encapsulamento:
- Herança: Permite criar subclasses que herdam de uma classe pai.
- Polimorfismo: Reutilização de código e escalabilidade.
- Encapsulamento: Protege atributos com getters e setters.
- Materiais:
- Interfaces e Classes Abstratas: Diferencie o uso de interfaces como contratos e classes abstratas para reutilização de código.
- Anotações: Marque o código com metadados.
- Exceções: Manipule erros de forma eficiente.
-
Sistema de Gerenciamento de Estudantes (CRUD): Crie um sistema simples para gerenciar alunos com operações de CRUD. Use herança, encapsulamento e arrays para armazenar dados.
-
Biblioteca de Livros com Herança e Polimorfismo: Modele uma biblioteca com itens como livros e revistas, aplicando polimorfismo para o empréstimo de diferentes itens.
-
Jogo de Cartas (Blackjack): Desenvolva um jogo de Blackjack com classes, objetos, herança e arrays.
-
Lambdas e Coleções: Trabalhe com expressões lambda e a API de coleções.
-
Gerenciamento de Memória e Garbage Collection: Compreenda a coleta de lixo e como o Java gerencia a memória.
-
Reflexão: Use reflexão para inspecionar e modificar o comportamento de classes e objetos em tempo de execução.
- Material: Oracle Docs - Reflection in Java
-
APIs e Protocolos: Entenda APIs RESTful e WebSockets para comunicação de dados.
-
Padrões de Design: Estude padrões de design como Singleton e MVC.
- Spring Boot: Desenvolva APIs REST com Spring Boot e organize código com padrões de design.
-
API de Gerenciamento de Funcionários com Spring Boot: Desenvolva uma API REST para gerenciar funcionários, aplicando CRUD com banco de dados.
-
Sistema de Agendamento com Notificações: Crie um sistema de compromissos que envia notificações em tempo real.
-
Sistema de Comércio Eletrônico: Desenvolva uma aplicação de comércio eletrônico com carrinho de compras e gerenciamento de estoque.
-
Analisador de Logs de Sistema: Desenvolva uma aplicação que analisa logs de servidores e gera relatórios em tempo real.