Πέμπτη, 15 Ιουνίου 2017

Builder Design Pattern



Το Builder Pattern είναι ένα pattern που το χρησιμοποιούμε όταν θέλουμε να "οικοδομήσουμε" ένα αντικείμενο. Ας υποθέσουμε πως έχουμε ένα αντικείμενο που έχει πολλές ιδιότητες που πρέπει να οριστούν. Αυτό μπορεί να γίνει κατά τον constructor σαν παράμετροι του. Μπορεί επίσης να γίνει μέσα στον client κώδικα θέτοντας τις τιμές μια-μια. 

Όμως αν η κλάση έχει πολλές ιδιότητες και χρειάζεται να φτιάξουμε πολλές φορές το ίδιο αντικείμενο; Εδώ έρχεται το Builder. Ουσιαστικά φτιάχνουμε μια κλάση η οποία στον constructor φτιάχνει ένα νέο αντικείμενο της κλάσης που θέλουμε να κάνουμε instantiate και μετά φτιάχνουμε μεθόδους set και get ώστε να προσδώσουμε ιδιότητες αλλά και να τις διαβάσουμε.

Τέλος έχουμε τον director, ο οποίος αναλαμβάνει να κάνει όλη τη δουλειά. Αρκεί βέβαια να του περάσουμε το κατάλληλο builder αντικείμενο μας. Εκεί κάνουμε set τις ιδιότητες μας και από το ίδιο αντικείμενο μπορούμε να κάνουμε και get για να τις διαβάσουμε.

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

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