Патерн Template Method формує структуру алгоритму і дозволяє в похідних класах реалізувати, перекрити або перевизначити певні кроки алгоритму, не змінюючи структуру алгоритму в цілому.
Проектувальник вирішує, які кроки алгоритму є незмінними, а які змінними. Інтерфейсом реалізуються стандартні незмінні кроки алгоритму і може надавати реалізацію за замовчуванням для змінюваних кроків. Змінні кроки можуть надаватися клієнтом компонента в конкретних похідних структурах.
Для реалізації необхідно:
- Інтерфейс Quoter, що який описує порядок дій;
- Структура Quotes, яка реалізує змінювані дії.