Sobes.tech
Junior — Middle

Կարող եք բացատրել Singleton դիզայնի ձևանմուշի գաղափարը և դրա կիրառումը?

sobes.tech AI

Պատասխան AI-ից

Singleton-ը նախագծման ձևանմուշ է, որը երաշխավորում է, որ դասի միայն մեկ օրինակ կա և տրամադրում է այդ օրինակին գլոբալ մուտք։

Դիմումներ՝

  • Երբ անհրաժեշտ է միայն մեկ օբյեկտ, օրինակ՝ կոնֆիգուրացիան կառավարելու, գրանցում, տվյալների բազայի կապ։
  • Թե՞ խուսափել բազմակի օրինակների ստեղծումից, որոնք կարող են սպառել ռեսուրսները կամ հանգեցնել անհամապատասխանության։

Node.js-ում Singleton-ի իրականացման օրինակ՝

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

Այսպիսով, երբ փորձում եք ստեղծել նոր օբյեկտ Singleton դասից, միշտ վերադառնում է նույն օրինակը։