Σχεδιαστικά πρότυπα: Διαφορά μεταξύ των αναθεωρήσεων
Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
Xqbot (συζήτηση | συνεισφορές) μ Bot: Replace deprecated <source> tag and "enclose" parameter. |
Χωρίς σύνοψη επεξεργασίας |
||
Γραμμή 2:
== Ιστορικό ==
Κατά τα τέλη της δεκαετίας του 1970 ένας [[αρχιτεκτονική|αρχιτέκτονας]] ονόματι [[Κρίστοφερ Αλεξάντερ]] επιχείρησε να βρει και να καταγράψει αποδεδειγμένα ποιοτικούς σχεδιασμούς στον τομέα των κατασκευών. Έτσι μελέτησε πολλές διαφορετικές κατασκευές που εξυπηρετούσαν τον ίδιο σκοπό και προσπάθησε να ανακαλύψει κοινά στοιχεία, τα οποία κατηγοριοποίησε σε ''σχεδιαστικά πρότυπα''. Το 1987 η ιδέα της εύρεσης σχεδιαστικών προτύπων εφαρμόστηκε για πρώτη φορά στη μηχανική λογισμικού και μέχρι τα μέσα της δεκαετίας του '90 η εν λόγω έννοια είχε καθιερωθεί και εξαπλωθεί, προσανατολισμένη πλέον προς τον [[
== Πρότυπα ==
Γραμμή 8:
=== Κατασκευαστικά πρότυπα ===
Τα κατασκευαστικά πρότυπα αφορούν τυποποιημένους τρόπους δυναμικής κατασκευής [[αντικειμενοστρεφής προγραμματισμός#Έννοιες|αντικειμένων]] κατά τον [[χρόνος εκτέλεσης|χρόνο εκτέλεσης]]. Απώτερος στόχος τους είναι η ανεξαρτητοποίηση του κώδικα που χρησιμοποιεί κάποια αντικείμενα από τις [[αντικειμενοστρεφής προγραμματισμός#Έννοιες|κλάσεις]] που ορίζουν τα αντικείμενα αυτά και τον τρόπο που κατασκευάζονται στη [[Μνήμη υπολογιστή|μνήμη]], σύμφωνα με την [[αντικειμενοστρεφής προγραμματισμός#Αρχές αντικειμενοστρεφούς σχεδίασης|αρχή ανοιχτότητας-κλειστότητας]] για ορθή
==== Factory ====
Γραμμή 476:
==== Facade ====
Σε περίπτωση που, για την εκτέλεση μίας εργασίας, διαθέσιμο είναι ένα περίπλοκο σύνολο αλληλεπιδρώντων κλάσεων (έστω σύνολο Α) οι οποίες συνδυάζονται με διάφορους τρόπους, τότε ο προγραμματιστής μπορεί να αποκρύψει αυτόν τον ιστό αλληλεπιδράσεων "καλύπτοντας" τις επίμαχες μονάδες λογισμικού με μία κλάση η οποία εξάγει μία απλή και εύχρηστη διασύνδεση, ένα σύνολο κατάλληλων δημοσίων μεθόδων το οποίο χρησιμοποιεί εσωτερικά το σύνολο Α. Η διασύνδεση αυτή μπορεί ακολούθως να αξιοποιηθεί για την παραγωγή νέου κώδικα χωρίς ανάγκη άμεσης καταφυγής στις περίπλοκες κλάσεις του Α, αποτελεί δηλαδή μία "βιτρίνα" υψηλού επιπέδου. Ένα μη
==== Proxy ====
|