Skip to content

RamonLarcherRibeiro/100DaysOfCodeJava

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

100 DAYS OF CODE JAVA ☕

💻Roteiro de Estudos

Dia Tema Descrição
01 Classes e Objetos Criação de classes e instância de objetos, a base da POO.
02 Atributos e encapsulamento Restrição de acesso direto a alguns componentes de um objeto, usando getters e setters.
03 Heranças Como criar e usar subclasses que herdam atributos e métodos de uma superclasse, permitindo a reutilização de código.
04 Polimorfismo Polimorfismo em tempo de compilação conhecido como sobrecarga (overloading) e em tempo de execução conhecido como sobrescrita (overriding)
05 Classes abstratas O uso de classes abstratas, que não podem ser instanciadas diretamente, e podem conter métodos abstratos que devem ser implementados por classes filhas.
06 Interfaces O uso de interfaces para definir um conjunto de métodos que uma classe deve implementar, sem definir a implementação dos métodos.
07 Classes anônimas Classes anônimas em Java são um tipo especial de classe interna que não possuem um nome. Elas são úteis quando você precisa criar uma única instância de uma classe localmente, geralmente para sobrescrever métodos de uma classe ou interface. Elas são frequentemente usadas em combinação com interfaces e classes abstratas.
08 Classes internas Classes internas são classes definidas dentro de outras classes em linguagens de programação orientadas a objetos, como Java. Elas são úteis para agrupar lógica que faz parte de uma classe externa, permitindo um encapsulamento mais rigoroso e um design de código mais limpo.
09 Enumerações (enums) As enumerações, ou enums, em Java são um tipo especial de classe que representa um conjunto fixo de constantes.
10 Manipulação de exceções (try, catch, finally) Em Java, a manipulação de exceções é feita através das estruturas try, catch e finally. Essas estruturas permitem que você lide com exceções que podem ocorrer durante a execução do seu código, garantindo que o programa não seja interrompido abruptamente.
11 Exceções personalizadas Como criar exceções personalizadas em Java, estendendo a classe Exception ou RuntimeException para representar erros específicos do aplicativo.
12 Modificadores de acesso Os diferentes níveis de acesso que podem ser aplicados a classes, atributos e métodos em Java, para controlar sua visibilidade e acesso por outras classes.
13 Métodos estáticos e variáveis estáticas. O uso de métodos e variáveis estáticas em uma classe, que pertencem à classe em vez de instâncias individuais da classe.
14 Modificador final. O modificador final pode ser aplicado a variáveis, métodos e classes para indicar que eles não podem ser alterados, sobrescritos ou estendidos, respectivamente.
15 Implementação de toString, equals e hashCode A implementação dos métodos toString, equals e hashCode em uma classe para fornecer representações de string, comparações de igualdade e cálculos de hash.
16 Coleções (ArrayList, LinkedList, HashSet, HashMap) O uso de coleções em Java para armazenar e manipular grupos de objetos, incluindo listas, conjuntos e mapas.
17 Generics Como usar generics em Java para criar classes, interfaces e métodos que podem funcionar com diferentes tipos de dados, fornecendo segurança de tipo em tempo de compilação.
18 Comparação de objetos (Comparable, Comparator) O uso das interfaces Comparable e Comparator para permitir a comparação de objetos em Java, em ordem natural ou personalizada.
19 Padrão Singleton A implementação do padrão Singleton em Java, que garante que uma classe tenha apenas uma instância e fornece um ponto global de acesso a essa instância.
20 Padrão Factory O uso do padrão Factory em Java para criar objetos sem especificar a classe exata do objeto que será criado, delegando a criação para uma classe Factory.
21 Padrão Builder O uso do padrão Builder em Java para construir objetos complexos passo a passo, separando o processo de construção da representação final do objeto.
22 Padrão Prototype A implementação do padrão Prototype em Java, que permite a criação de novos objetos duplicando objetos existentes, sem depender de suas classes concretas.
23 Padrão Adapter O uso do padrão Adapter em Java para permitir que interfaces incompatíveis funcionem juntas, convertendo a interface de uma classe em outra interface esperada pelo cliente.
24 Padrão Decorator A implementação do padrão Decorator em Java para adicionar comportamento adicional a um objeto de maneira dinâmica, sem alterar sua estrutura.
25 Padrão Bridge A implementação do padrão Bridge em Java para desacoplar uma abstração da sua implementação, permitindo que ambos possam variar independentemente.
26 Spring Boot Construindo uma API RESTful usando spring boot
27 Spring Data JPA Criando mapeamento de objeto relacional Java para a base de dados
28 Padrão State O uso do padrão State em Java para permitir que um objeto altere seu comportamento quando seu estado interno muda, como se o objeto tivesse mudado sua classe.
29 Padrão Proxy O uso do padrão Proxy em Java para fornecer um substituto ou representante de outro objeto para controlar o acesso a ele.
30 Padrão Chain of Responsibility A implementação do padrão Chain of Responsibility em Java para passar uma solicitação por uma cadeia de manipuladores, até que um deles a processe.
31 Padrão Command O uso do padrão Command em Java para encapsular uma solicitação como um objeto, permitindo parametrizar clientes com filas, solicitações e operações.
32 Padrão Interpreter A implementação do padrão Interpreter em Java para definir uma gramática e um interpretador que usa a gramática para interpretar frases em uma linguagem.
33 Padrão Iterator O uso do padrão Iterator em Java para fornecer um meio de acessar os elementos de uma coleção sequencialmente, sem expor sua representação subjacente.
34 Padrão Mediator A implementação do padrão Mediator em Java para reduzir a complexidade das comunicações entre múltiplos objetos ou classes, centralizando o controle.
35 Padrão Memento O uso do padrão Memento em Java para capturar e restaurar o estado interno de um objeto sem violar o encapsulamento.
36 Padrão Observer A implementação do padrão Observer em Java para definir uma dependência um-para-muitos entre objetos, para que quando um objeto muda de estado, todos os seus dependentes sejam notificados.
37 Padrão State O uso do padrão State em Java para permitir que um objeto altere seu comportamento quando seu estado interno muda, como se o objeto tivesse mudado sua classe.
38 Padrão Strategy A implementação do padrão Strategy em Java para definir uma família de algoritmos, encapsulá-los e torná-los intercambiáveis, permitindo que o algoritmo varie independentemente dos clientes que o utilizam.
39 Padrão Template Method O uso do padrão Template Method em Java para definir o esqueleto de um algoritmo em uma operação, postergando alguns passos para subclasses.
40 Padrão Visitor A implementação do padrão Visitor em Java para representar uma operação a ser realizada nos elementos de uma estrutura de objeto, permitindo definir novas operações sem alterar as classes dos elementos sobre os quais opera.
41 Padrão Null Object O uso do padrão Null Object em Java para fornecer um objeto que implementa uma interface esperada, mas não realiza nenhuma ação, substituindo a verificação de nulidade.
42 Padrão Data Access Object (DAO) O uso do padrão Data Access Object (DAO) em Java para abstrair e encapsular todo o acesso a uma fonte de dados, fornecendo uma interface simples e consistente para operações de banco de dados.
43 Padrão Data Transfer Object (DTO) A implementação do padrão Data Transfer Object (DTO) em Java para transferir dados entre subsistemas de uma aplicação, reduzindo o número de chamadas de métodos necessárias para obter dados.
44 Padrão Repository O uso do padrão Repository em Java para encapsular a lógica de armazenamento, recuperação e busca que emana diretamente da infraestrutura de persistência.
45 Padrão Service A implementação do padrão Service em Java para encapsular a lógica de negócios, fornecendo métodos que representam operações de negócios e ocultando detalhes de implementação.
46 Padrão Dependency Injection (DI) O uso do padrão Dependency Injection (DI) em Java para fornecer as dependências de uma classe a partir de fora, promovendo a separação de preocupações e facilitando testes.
47 Padrão Lazy Initialization O uso do padrão Lazy Initialization em Java para atrasar a criação de um objeto, o cálculo de um valor ou algum outro processo dispendioso, até que ele seja realmente necessário.
48 Padrão Value Object A implementação do padrão Value Object em Java para encapsular um conjunto de atributos em um único objeto, tornando-os imutáveis e promovendo o uso seguro em múltiplas threads.
49 Padrão Active Record A implementação do padrão Active Record em Java para encapsular a lógica de acesso a dados e lógica de negócios dentro de uma única classe de domínio.
50 Padrão Table Data Gateway O uso do padrão Table Data Gateway em Java para encapsular toda a lógica de acesso a uma tabela de banco de dados em uma única classe.
51 Padrão Row Data Gateway A implementação do padrão Row Data Gateway em Java para encapsular o acesso a uma linha específica de uma tabela de banco de dados.
52 Calculo de Média Um programa que calcula a média de um aluno
53 Ordenação de números Um programa que ordena uma lista de números inteiros em ordem crescente.
54 Conta bancária Implementar uma classe ContaBancária com métodos para depósito e saque.
55 Removendo elementos duplicados Implementar um método que remova todos os elementos duplicados de uma lista.
56 Classe Funcionario Criar uma classe Funcionario com métodos para calcular o salário com base em horas trabalhadas e taxa
57 Verificação de Anagramas Verificar se duas strings são anagramas uma da outra.
58 Verificação de Anagramas 2 Verificar se duas strings são anagramas uma da outra.
59 Substrings Encontrar todas as substrings de uma string.
60 Filtrar Lista com Condições Dada uma lista de objetos Pessoa, crie um método que retorna apenas as pessoas com idade maior que 18, usando um loop for.
61 Contar Frequência de Elementos Dada uma lista de inteiros, crie um método que conte a frequência de cada número usando um Map<Integer, Integer>.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages