Sobes.tech
Junior — Middle

Môžete vysvetliť koncept návrhového vzoru Singleton a jeho použitie?

sobes.tech AI

Odpoveď od AI

Singleton je vzor návrhu, ktorý zaručuje, že trieda má iba jeden inštanciu a poskytuje globálny prístup k tejto inštancii.

Použitie:

  • Keď je potrebný jediný objekt, napríklad na správu konfigurácie, logovanie, pripojenie k databáze.
  • Aby sa zabránilo vytváraniu viacerých inštancií, ktoré môžu spotrebovať zdroje alebo viesť k nekonzistencii.

Príklad implementácie Singleton v 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

Týmto spôsobom, pri pokuse vytvoriť nový objekt triedy Singleton, sa vždy vráti tá istá inštancia.