Встречается на собеседованиях • сегодня
Зачем нужен паттерн Декоратор
Декоратор — это структурный паттерн, который позволяет динамически добавлять объектам новую функциональность, оборачивая их в полезные «обёртки».
**Преимущества:**
- Гибкость: можно добавлять/удалять поведение во время выполнения.
- Соответствует Open/Closed Principle — код расширяется без изменения существующих классов.
- Альтернатива наследованию, избегая взрывного роста подклассов.
**Пример:**
```python
def bold(func):
def wrapper(*args, **kwargs):
return f"{func(*args, **kwargs)}"
return wrapper
@bold
def greet(name):
return f"Hello, {name}!"
print(greet("Alice")) # Hello, Alice!
```
**Где применяется:**
- Логирование, кэширование, проверка прав доступа.
- Расширение стандартных библиотек (например, Flask-роуты).
- Модификация возвращаемых данных (HTML, JSON-обёртки).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы