Τρίτη, 19 Ιουλίου 2016

Design Patterns - Template Method


Η βασική λογική της Template method είναι η χρήση μιας βασικής μεθόδου σκελετού η οποία παραμένει ίδια σε όλες τις υποκλάσεις, ενώ έχουμε τις επιμέρους μεθόδους να διαφέρουν. Παράδειγμα από τον πραγματικό κόσμο είναι η διαδικασία παραγωγής κάποιου αφεψήματος. Η διαδικασία είναι πάντα η ίδια. Βράζουμε νερό, περνάμε το νερό μέσα από το βασικό συστατικό και το σερβίρουμε σε ποτήρι. Στη συνέχεια προσθέτουμε μέσα στο ποτήρι ζάχαρη, μέλι ή γάλα ανάλογα τι θέλουμε.

Αντί λοιπόν να έχουμε δύο διαφορετικές κλάσεις για την παραγωγή καφέ και τσάι, με αποτέλεσμα να ξεχνάμε έναν βασικό κανόνα του προγραμματισμού, DRY (Don't Repeat Yourself) έχουμε μια κλάση με μια Template μέθοδο η οποία είναι ίδια για οποιοδήποτε αφέψημα και hook methods για τις επιμέρους λειτουργίες που διαφέρουν. Για να εξασφαλίσουμε πως η βασική μέθοδο δεν θα γίνει override από κάποια υποκλάση μπορούμε να την ορίσουμε ως final.



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

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