Junior — Middle
შეგიძლიათ ახსნათ სინგლტონის დიზაინის ნიმუშის კონცეფცია და მისი გამოყენება?
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 კლასიდან, ყოველთვის იმავე ინстанცია დაბრუნდება.