Junior — Middle
Μπορείτε να εξηγήσετε την έννοια του μοτίβου σχεδίασης Singleton και την εφαρμογή του;
sobes.tech AI
Απάντηση από AI
Το Singleton είναι ένα μοτίβο σχεδίασης που εγγυάται ότι μια κλάση έχει μόνο ένα στιγμιότυπο και παρέχει μια παγκόσμια πρόσβαση σε αυτό το στιγμιότυπο.
Εφαρμογές:
- Όταν χρειάζεται ένα μόνο αντικείμενο, π.χ., για διαχείριση διαμόρφωσης, καταγραφής, σύνδεσης με βάση δεδομένων.
- Για να αποφευχθεί η δημιουργία πολλαπλών στιγμιότυπων που μπορούν να καταναλώσουν πόρους ή να οδηγήσουν σε ασυνεπείς καταστάσεις.
Παράδειγμα υλοποίησης Singleton σε 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
Έτσι, όταν προσπαθείτε να δημιουργήσετε ένα νέο αντικείμενο της κλάσης Singleton, πάντα επιστρέφεται η ίδια παρουσία.