Πέμπτη, 15 Δεκεμβρίου 2016

Strategy Design Pattern



Το Strategy pattern μπορούμε να το χρησιμοποιήσουμε όταν έχουμε διαφορετικές μεθόδους που εκτελούν την ίδια διαδικασία. Όπως φαίνεται και στο παράδειγμα αντί να έχουμε διαφορετικές μεθόδους discount μέσα στην κλάση BuyGames τις βγάζουμε έξω και φτιάχνουμε μια μέθοδο μέσα στην BuyGames η οποία δέχεται ως όρισμα ένα αντικείμενο τύπου IDiscount και επιστρέφει την μέθοδο του αντικειμένου calculateDiscount. Με αυτό το τρόπο μπορούμε μέσα στον client κώδικα να επιλέξουμε ποια έκπτωση θα χρησιμοποιηθεί ανάλογα με την περίπτωση. Μπορούμε για παράδειγμα να έχουμε μεγάλη έκπτωση τις Δευτέρες, μικρή έκπτωση τις Παρασκευές και καμία έκπτωση όλες τις άλλες μέρες.

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου