Differences
This shows you the differences between two versions of the page.
| |
| oop:facade_pattern [2026/05/25 11:29] – created gthanos | oop:facade_pattern [2026/05/25 11:29] (current) – [Πλεονεκτήματα:] gthanos |
|---|
| ==== Πλεονεκτήματα: ==== | ==== Πλεονεκτήματα: ==== |
| |
| * Μείωση Πολυπλοκότητας: Απομονώνει τον Client από τα πολύπλοκα υποσυστήματα. | * **Μείωση Πολυπλοκότητας:** Απομονώνει τον Client από τα πολύπλοκα υποσυστήματα. |
| * Χαλαρή Σύζευξη (Loose Coupling): Αν αύριο αλλάξει ο τρόπος που λειτουργεί το SoundSystem, θα χρειαστεί να αλλάξει μόνο η κλάση Facade και όχι ολόκληρη η εφαρμογή μας. | * **Χαλαρή Σύζευξη (Loose Coupling):** Αν αύριο αλλάξει ο τρόπος που λειτουργεί το SoundSystem, θα χρειαστεί να αλλάξει μόνο η κλάση Facade και όχι ολόκληρη η εφαρμογή μας. |
| * Ευκολία στη χρήση: Ιδανικό όταν ενσωματώνουμε μεγάλες, κακογραμμένες ή παλιές (legacy) βιβλιοθήκες τρίτων. | * **Ευκολία στη χρήση:** Ιδανικό όταν ενσωματώνουμε μεγάλες, κακογραμμένες ή παλιές (legacy) βιβλιοθήκες τρίτων. |
| |
| 💡 Σημείωση: Το Facade Pattern δεν κρύβει απαγορευτικά το υποσύστημα. Αν ένας προχωρημένος Client θέλει να προσπεράσει το HomeTheaterFacade και να ρυθμίσει χειροκίνητα μόνο τα φώτα, έχει τη δυνατότητα να το κάνει. | 💡 **Σημείωση:** Το Facade Pattern δεν κρύβει απαγορευτικά το υποσύστημα. Αν ένας Client θέλει να προσπεράσει το HomeTheaterFacade και να ρυθμίσει χειροκίνητα μόνο τα φώτα, έχει τη δυνατότητα να το κάνει. |
| |
| |
| |