Назад к вопросам
Junior — Middle
64
Что такое паттерн Декоратор и какова его основная функция в программировании?
Ответ от нейросети
sobes.tech AI
Паттерн Декоратор — это структурный шаблон проектирования, который позволяет динамически добавлять объектам новые обязанности, оборачивая их в другие объекты-декораторы. Основная функция — расширять поведение объектов без изменения их исходного кода, сохраняя при этом интерфейс.
В Python часто используется в виде функции-декоратора, которая принимает функцию и возвращает новую функцию с дополнительным поведением.
Пример простого декоратора в Python:
def decorator(func):
def wrapper(*args, **kwargs):
print("До вызова функции")
result = func(*args, **kwargs)
print("После вызова функции")
return result
return wrapper
@decorator
def say_hello():
print("Привет!")
say_hello()
Здесь say_hello оборачивается в wrapper, который добавляет дополнительный функционал до и после вызова исходной функции.