
Перехватчики в паттерне Шаблонный Метод
«Перехватчиком» называется метод, объявленный абстрактным классом, но имеющий пустую
реализацию (или реализацию по умолчанию). Он дает возможность субклассу «подключаться» к алгоритму в разных точках. Впрочем, субкласс также может проигнорировать имеющийся перехватчик.
Рассмотрим пример возможного применения перехватчиков (другие примеры будут описаны
позднее):

Использование перехватчиков
Чтобы использовать метод-перехватчик, мы переопределяем его в субклассе. В данном случае перехватчик управляет выполнением класса CaffeineBeverage определенной части алгоритма, а именно добавками к напитку.
Как узнать, нужно ли класть клиенту в кофе сахар/молоко? Да просто спросить!

Проверяем, как работает код
Вода закипает… Следующая тестовая программа приготовит горячий чай и кофе.

И знаете что? Мы с вами согласимся. Но признайте: до того, как вам пришла в голову подобная мысль, это был классный пример использования перехватчиков для условного управления выполнением алго ритма в абстрактном классе. Верно?
Несомненно, вы сможете придумать много других, более реалистичных сценариев использования шаблонных методов и перехватчиков в своем коде.

Более подробно с книгой можно ознакомиться на сайте издательства
» Оглавление
» Отрывок
Для Хаброжителей скидка 25% по купону — Head First
По факту оплаты бумажной версии книги на e-mail высылается электронная книга.
- Обратите внимание, сейчас проходит осенняя распродажа от издательства «Питер».