Sobes.tech
Junior — Middle

Consegue nomear os principais padrões de projeto utilizados no desenvolvimento de software?

sobes.tech IA

Resposta da IA

Padrões de design principais, frequentemente utilizados no desenvolvimento de software:

  • Singleton (Singleton) — garante que uma classe tenha apenas uma instância e fornece um ponto de acesso global a ela.
  • Factory Method (Método de Fábrica) — define uma interface para criar um objeto, mas permite que subclasses alterem o tipo de objeto criado.
  • Observer (Observador) — permite que objetos se inscrevam em eventos de outro objeto e recebam notificações de alterações.
  • Decorator (Decorador) — adiciona responsabilidades adicionais aos objetos de forma dinâmica, envolvendo-os.
  • Strategy (Estratégia) — define uma família de algoritmos, encapsula cada um deles e os torna intercambiáveis.
  • Adapter (Adaptador) — permite que objetos com interfaces incompatíveis trabalhem juntos.

Exemplo de Singleton em JavaScript:

class Singleton {
  constructor() {
    if (Singleton.instance) {
      return Singleton.instance;
    }
    this.value = Math.random();
    Singleton.instance = this;
  }
}

const a = new Singleton();
const b = new Singleton();
console.log(a === b); // true