Wzorce strukturalne
System przed wprowadzeniem zmian:
Wzorzec dekorator – pozwala na ulepszenie i rozbudowanie obiektów. Umożliwia wykorzystanie jednej, żadnej lub kilku dekoracji. Dzięki dekoratorowi nie musimy modyfikować klas czy obiektów, by uzyskać zamierzony cel. Nasza koncepcja zakłada wykorzystanie dekoratora w przyznawaniu rabatu na paliwo bądź produkty zakupione w sklepie stacji. Rabat cenowy, bądź kupon na paliwo są dekoratorami klas takich jak Paliwo czy Produkt. Pozwalają na przydzielenie rabatu bez tworzenia nowej klasy lub modyfikacji istniejącej.
Wzorzec fasada – pozwala na udostepnienie złożonych funkcjonalności i operacji w prosty dla klienta sposób. Złożone operacje czy tworzenia obiektów wielu klas są ukryte za fasadą, za pomocą, której klient ma do nich dostęp. Wzorzec ten znalazł zastosowanie w naszym systemie. Pracownik stacji benzynowej musi poradzić sobie z obsługą stacji paliw, tankowania samochodów, sprzedażą produktów i obsługą myjni. Tę obsługę wykonuje przy pomocy systemu kasowego. W tym wypadku nieświadomie wykorzystaliśmy wzorzec fasada. Pokazuje to, że wzorce projektowe bywają intuicyjne, a ich zastosowanie jest proste i uzasadnione.