Patrón Singleton

¿Qué es el Patrón Singleton?

El patrón Singleton es un patrón de diseño creacional que asegura que una clase tenga una única instancia y proporciona un punto de acceso global a dicha instancia.

Código de Ejemplo en JavaScript

            
class Singleton {
  constructor() {
    if (Singleton.instance) {
      return Singleton.instance;
    }
    Singleton.instance = this;
    this.config = {};
  }

  setConfig(key, value) {
    this.config[key] = value;
  }

  getConfig(key) {
    return this.config[key];
  }
}

const instance1 = new Singleton();
instance1.setConfig("theme", "dark");

const instance2 = new Singleton();
console.log(instance2.getConfig("theme")); // "dark"
console.log(instance1 === instance2); // true

        

Casos de Uso

  • Gestión de configuraciones globales.
  • Logging (registro de eventos en una sola instancia).
  • Conexión a bases de datos (una sola conexión abierta).
  • Gestión del estado global en aplicaciones.

Patrones Relacionados

  • Factory Method: Controla la creación de objetos pero no garantiza una única instancia.
  • Prototype: Clona objetos existentes.
  • Module Pattern: Similar en su uso cuando se trabaja con módulos ES6.
Whatsapp Mentores Tech