🟣 Подробное описание паттерна
Структурный паттерн
Декоратор (англ. Decorator) позволяет расширять функциональность без использования наследования. Дело в том, что механизм наследования имеет несколько проблем:
1⃣ Он статичный, т.е. не дает возможности менять поведение уже существующего объекта.
2⃣ Он не позволяет наследовать поведение нескольких классов одновременно.
Декоратор позволяет обойти эти проблемы. Суть этого шаблона отлично передает его второе название — "обертка". Вы помещаете один объект в другой — обертку. Обертка запускает базовое поведение объекта, а затем что-то добавляет к нему.🗂 Код на Python



