Sobes.tech
Junior — Middle

Pode explicar o conceito de padrão de projeto Singleton e sua aplicação?

sobes.tech IA

Resposta da IA

Singleton é um padrão de projeto que garante que uma classe tenha apenas uma instância e fornece um ponto de acesso global a essa instância.

Aplicações:

  • Quando é necessário um único objeto, por exemplo, para gerenciar configurações, logging, conexão à base de dados.
  • Para evitar criar múltiplas instâncias que possam consumir recursos ou levar a inconsistências.

Exemplo de implementação do Singleton em Node.js:

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

Assim, ao tentar criar um novo objeto da classe Singleton, sempre é retornada a mesma instância.