Sobes.tech
Назад к вопросам
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, который добавляет дополнительный функционал до и после вызова исходной функции.