10. Расскажите про паттерн Декоратор (Decorator).
UNKNOWNСтруктурный паттерн проектирования, который позволяет добавлять объектам новую функциональность, оборачивая их в полезные «обёртки».
Целевой объект помещается в другой объект-обёртку, который запускает базовое поведение обёрнутого объекта, а затем добавляет к результату что-то своё.
Оба объекта имеют общий интерфейс, поэтому для пользователя нет никакой разницы, с каким объектом работать — чистым или обёрнутым. Вы можете использовать несколько разных обёрток одновременно — результат будет иметь объединённое поведение всех обёрток сразу.
Адаптер не менят состояния объекта, а декоратор может менять.
+: Большая гибкость, чем у наследования.
- : Труднее конфигурировать многократно обёрнутые объекты.
Предыдущий вопрос: 9. Расскажите про паттерн Адаптер (Adapter).
Следующий вопрос: 11. Расскажите про паттерн Заместитель (Proxy).
Все вопросы по теме: список
Все темы: список
Вопросы/замечания/предложения/нашли ошибку: напишите мне