Sobes.tech
Junior — Middle

¿Puede explicar el concepto de patrón de diseño Singleton y su aplicación?

sobes.tech AI

Respuesta de la IA

Singleton es un patrón de diseño que garantiza que una clase tenga solo una instancia y proporciona un punto de acceso global a esa instancia.

Aplicaciones:

  • Cuando se necesita un único objeto, por ejemplo, para gestionar la configuración, el registro, la conexión a la base de datos.
  • Para evitar crear múltiples instancias que puedan consumir recursos o conducir a inconsistencias.

Ejemplo de implementación de Singleton en 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

De esta manera, al intentar crear un nuevo objeto de la clase Singleton, siempre se devuelve la misma instancia.