Sobes.tech
Middle

Ποιες ταξινομήσεις προτύπων σχεδίασης γνωρίζετε;

sobes.tech AI

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

Υπάρχουν διάφορες ταξινομήσεις των σχεδιαστικών μοτίβων:

  • Κατά σκοπό:

    • Δημιουργικά: Ελέγχουν τη διαδικασία δημιουργίας αντικειμένων. Παραδείγματα: Μέθοδος εργοστασίου, Αφηρημένο εργοστάσιο, Singleton, Πρωτότυπο, Κατασκευαστής.
    • Δομικά: Ορίζουν τρόπους κατασκευής δομών κλάσεων και αντικειμένων. Παραδείγματα: Προσαρμογέας, Γέφυρα, Σύνθετο, Διακοσμητής, Πρόσοψη, Flyweight, Proxy.
    • Συμπεριφορικά: Περιγράφουν την αλληλεπίδραση μεταξύ κλάσεων και αντικειμένων. Παραδείγματα: Αλυσίδα ευθύνης, Εντολή, Επαναλήπτης, Μεσολαβητής, Memento, Παρατηρητής, Κατάσταση, Στρατηγική, Πρότυπο μεθόδου, Επισκέπτης.
  • Κατά επίπεδο αφαίρεσης (σύμφωνα με το GoF - "Τέσσερα"): Αυτή η ταξινόμηση, προταθείσα στο βιβλίο "Design Patterns: Elements of Reusable Object-Oriented Software", είναι η πιο διαδεδομένη και περιλαμβάνει τις παραπάνω κατηγορίες (δημιουργικά, δομικά, συμπεριφορικά).

  • Κατά εφαρμογή:

    • Μοντέλα κλάσεων: Περιγράφουν τις σχέσεις μεταξύ κλάσεων κατά τη μεταγλώττιση.
    • Μοντέλα αντικειμένων: Περιγράφουν τις σχέσεις μεταξύ αντικειμένων κατά την εκτέλεση.
  • Κατά εξειδίκευσης πεδίου:

    • Μοντέλα διεπαφής χρήστη: Ορίζουν τρόπους αλληλεπίδρασης με τον χρήστη (π.χ., Model-View-Controller, Model-View-ViewModel).
    • Μοντέλα αλληλεπίδρασης: Περιγράφουν τους τρόπους επικοινωνίας μεταξύ συστατικών του συστήματος.
    • Άλλα ειδικά μοτίβα πεδίου.