Sobes.tech
Junior — Middle

Puteți explica conceptul de șablon de proiectare Singleton și aplicarea sa?

sobes.tech AI

Răspuns de la AI

Singleton este un pattern de proiectare care garantează că o clasă are o singură instanță și oferă un punct de acces global la acea instanță.

Aplicații:

  • Când este nevoie de un singur obiect, de exemplu, pentru gestionarea configurației, jurnalizare, conexiune la bază de date.
  • Pentru a evita crearea mai multor instanțe care pot consuma resurse sau pot duce la inconsistențe.

Exemplu de implementare a Singleton în 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

Astfel, atunci când încerci să creezi un nou obiect al clasei Singleton, întotdeauna se returnează aceeași instanță.