Sobes.tech
Junior — Middle

Ποια πρότυπα σχεδίασης χρησιμοποιήθηκαν στην επίλυση συγκεκριμένων задач στην πρακτική σας;

sobes.tech AI

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

Στην πρακτική ανάπτυξης Java, έχω χρησιμοποιήσει διάφορα μοτίβα σχεδίασης:

  • Singleton — για τη δημιουργία μιας μοναδικής στιγμιότυπου μιας κλάσης, π.χ., για έναν διαχειριστή ρυθμίσεων.
  • Factory Method — για τη δημιουργία αντικειμένων χωρίς στενή σύνδεση με συγκεκριμένες κλάσεις, διευκολύνοντας την επέκταση της λειτουργικότητας.
  • Observer — για την υλοποίηση ενός μοντέλου βασισμένου σε γεγονότα, π.χ., σε GUI ή κατά την επεξεργασία αλλαγών δεδομένων.
  • Decorator — για την δυναμική προσθήκη λειτουργικότητας σε αντικείμενα, π.χ., κατά την καταγραφή ή την προσωρινή αποθήκευση.

Παράδειγμα χρήσης του Singleton:

public class ConfigManager {
    private static ConfigManager instance;
    private Properties config;

    private ConfigManager() {
        // φόρτωση διαμόρφωσης
    }

    public static synchronized ConfigManager getInstance() {
        if (instance == null) {
            instance = new ConfigManager();
        }
        return instance;
    }

    public String getProperty(String key) {
        return config.getProperty(key);
    }
}