CodeGym/Blogue Java/Random-PT/Padrões de projeto em Java [Parte 1]
John Squirrels
Nível 41
San Francisco

Padrões de projeto em Java [Parte 1]

Publicado no grupo Random-PT
Este é um pequeno artigo sobre padrões de projeto em Java. Não haverá nenhuma implementação de padrão, apenas uma lista de padrões em Java junto com uma breve descrição de cada um. Para aqueles que já estão familiarizados com o assunto, isso será útil como revisão e resumo. Por outro lado, aqueles que estão aprendendo sobre padrões pela primeira vez se beneficiarão disso como uma visão geral inicial do tópico antes de se aprofundar. Padrões de design em Java [Parte 1] - 1 Padrões de designsão soluções prontas para uso para tarefas de programação frequentes. Não é uma classe ou biblioteca que pode ser conectada a um projeto. É algo mais. Padrões de projeto adequados para cada tarefa são implementados em cada caso específico. Você deve se lembrar que, quando aplicado incorretamente ou a uma tarefa inadequada, um padrão de projeto pode criar muitos problemas. No entanto, um padrão aplicado corretamente pode ajudá-lo a concluir tarefas de maneira fácil e simples.

Tipos de padrões:

  • criacional
  • estrutural
  • comportamental
Os padrões de criação fornecem mecanismos de inicialização, permitindo que você crie objetos de maneiras convenientes. Padrões estruturais definem relacionamentos entre classes e objetos, permitindo que eles trabalhem juntos. Padrões comportamentais são usados ​​para simplificar a interação entre entidades.

Criacional:

  • Singleton — restringe a criação de uma classe a uma única instância e fornece acesso a essa única instância.

  • Factory — usado quando temos uma superclasse com várias subclasses e precisamos retornar uma subclasse com base na entrada.

  • Fábrica abstrata — usa uma superfábrica para criar fábricas, que então usamos para criar objetos.

  • Builder — usado para criar objetos complexos usando objetos simples. Ele gradualmente cria um objeto grande a partir de um objeto pequeno e simples.

  • Protótipo — ajuda a melhorar o desempenho ao criar objetos duplicados; em vez de criar um novo objeto, ele cria e retorna um clone de um objeto existente.

Estrutural:

  • Adaptador — um conversor entre dois objetos incompatíveis. Podemos usar o padrão adaptador para combinar duas interfaces incompatíveis.

  • Composto — usa uma classe para representar uma estrutura de árvore.

  • Proxy — fornece a funcionalidade de outra classe.

  • Flyweight — reutiliza objetos em vez de criar um grande número de objetos semelhantes.

  • Fachada — fornece uma interface simples para um cliente, que usa a interface para interagir com o sistema.

  • Bridge — torna classes específicas independentes das classes que implementam uma interface.

  • Decorador — adiciona nova funcionalidade a um objeto existente sem comprometer sua estrutura.

Comportamental:

  • Método de modelo — define um algoritmo básico e permite que os descendentes substituam algumas etapas do algoritmo sem alterar sua estrutura geral.

  • Mediator — fornece uma classe intermediária que lida com toda a comunicação entre diferentes classes.

  • Cadeia de responsabilidade — permite evitar a dependência estrita entre o remetente e o destinatário de uma solicitação; além disso, a solicitação pode ser processada por vários objetos.

  • Observer — permite que um objeto monitore e responda a eventos que ocorrem em outros objetos.

  • Estratégia — permite que as estratégias (algoritmos) sejam alteradas em tempo de execução.

  • Comando — uma interface que declara um método para executar uma ação específica.

  • Estado — permite que um objeto mude seu comportamento dependendo de seu estado.

  • Visitante — usado para simplificar as operações em grupos de objetos relacionados.

  • Intérprete — define uma gramática para uma linguagem simples no domínio do problema.

  • Iterator — acessa sequencialmente elementos de uma coleção sem conhecer sua forma subjacente.

  • Memento — usado para armazenar o estado de um objeto; este estado pode ser restaurado posteriormente.

À medida que avança no curso CodeGym, você encontrará alguns padrões nesta lista. Recomendo as seguintes tarefas sobre padrões: 1522 , 1530 , 1631 , big01 , 2912 , 3107 ... O uso inteligente de padrões de design leva a uma manutenção de código mais confiável, porque, além do fato de os padrões de design serem boas soluções para problemas comuns , outros desenvolvedores podem reconhecê-los, reduzindo o tempo necessário para trabalhar com determinado código.
Comentários
  • Populares
  • Novas
  • Antigas
Você precisa acessar para deixar um comentário
Esta página ainda não tem nenhum comentário