Sobes.tech
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, πάντα επιστρέφεται η ίδια παρουσία.