Template Method Design Pattern

Metoda Szablonowa. Celem tego wzorca projektowego jest zdefiniowanie metody, będącej szkieletem algorytmu. Z reguły ta metoda utworzona jest w klasie abstrakcyjnej i realizuje szereg kroków algorytmu, zdefiniowanych w poszczególnych metodach składowych. Metody składowe algorytmu mogą być następnie redefiniowany w konkretnych klasach pochodnych, ale bez zmiany ogólnej struktury algorytmu.
Zaletą stosowania tego wzorca projektowego jest możliwość zdefiniowania algorytmu, którego wybrane części mogą być w dowolny sposób modyfikowane. Kod nie jest duplikowany, jest przejrzysty, a dodawanie nowych wersji algorytmu jest prostsze i szybsze.