Sobes.tech
Middle

Que padrões de design conhece?

sobes.tech IA

Resposta da IA

  • Criacionais:
    • Método de fábrica: Criação de objetos através de uma interface sem especificar a classe concreta.
    • Fábrica abstrata: Criação de famílias de objetos relacionados ou dependentes sem especificar suas classes concretas.
    • Construtor: Criação passo a passo de um objeto complexo, permitindo usar o mesmo código de construção para obter diferentes representações do objeto.
    • Protótipo: Criação de novos objetos copiando existentes.
    • Singleton: Garante que uma classe tenha apenas uma instância e fornece um ponto de acesso global a ela.
  • Estruturais:
    • Adaptador: Converte a interface de uma classe na outra que os clientes esperam.
    • Ponte: Divide a abstração e a implementação de modo que possam variar independentemente.
    • Composto: Permite agrupar objetos em estruturas de árvore para representar hierarquias parte-todo.
    • Decorador: Adiciona responsabilidades adicionais a um objeto dinamicamente envolvendo-o em objetos decoradores.
    • Fachada: Fornece uma interface simplificada a um subsistema complexo.
    • Flyweight: Permite armazenar em memória uma grande quantidade de objetos pequenos compartilhando seu estado comum.
    • Proxy: Fornece um substituto ou representante de outro objeto para controlar o acesso a ele.
  • Comportamentais:
    • Cadeia de responsabilidade: Permite passar solicitações ao longo de uma cadeia de manipuladores.
    • Comando: Converte uma solicitação em um objeto autônomo que contém todas as informações da solicitação.
    • Iterador: Fornece uma maneira de acessar sequencialmente todos os elementos de um objeto composto sem revelar sua representação interna.
    • Mediador: Define um objeto que encapsula como um conjunto de objetos interage.
    • Memento: Permite guardar e restaurar o estado passado de um objeto sem revelar detalhes de sua implementação.
    • Observador: Define uma dependência um-para-muitos entre objetos, de modo que quando um muda seu estado, todos os seus dependentes são notificados e atualizados automaticamente.
    • Estado: Permite a um objeto alterar seu comportamento quando seu estado interno muda.
    • Estratégia: Define uma família de algoritmos, encapsula cada um e os torna intercambiáveis.
    • Método template: Define o esqueleto de um algoritmo em uma operação, deixando alguns passos às subclasses.
    • Visitante: Representa uma operação que deve ser realizada sobre os elementos de uma estrutura de objetos.

Também familiarizado com antipadrões e princípios SOLID.