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.