Sobes.tech
Junior — Middle

Μπορείτε να αναφέρετε τα βασικά πρότυπα σχεδίασης που χρησιμοποιούνται στην ανάπτυξη λογισμικού;

sobes.tech AI

Απάντηση από AI

Βασικά μοτίβα σχεδίασης, συχνά χρησιμοποιούμενα στην ανάπτυξη λογισμικού:

  • Singleton (Μονόκλινο) — διασφαλίζει ότι μια κλάση έχει μόνο ένα στιγμιότυπο και παρέχει μια παγκόσμια πρόσβαση σε αυτό.
  • Factory Method (Μέθοδος Εργοστασίου) — ορίζει μια διεπαφή για τη δημιουργία ενός αντικειμένου, αλλά επιτρέπει στις υποκλάσεις να αλλάξουν τον τύπο του αντικειμένου που δημιουργείται.
  • Observer (Παρατηρητής) — επιτρέπει σε αντικείμενα να εγγράφονται σε γεγονότα ενός άλλου αντικειμένου και να λαμβάνουν ειδοποιήσεις για αλλαγές.
  • Decorator (Διακοσμητής) — προσθέτει δυναμικά νέες ευθύνες στα αντικείμενα, περιτυλίγοντάς τα.
  • Strategy (Στρατηγική) — ορίζει μια οικογένεια αλγορίθμων, τους ενσωματώνει και τους καθιστά εναλλάξιμους.
  • Adapter (Προσαρμογέας) — επιτρέπει σε αντικείμενα με ασύμβατες διεπαφές να συνεργάζονται.

Παράδειγμα Singleton σε JavaScript:

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