Чем паттерн Decorator отличается от декоратора Python?

Middle
335 просмотров
AFK Offer AI

Паттерн Decorator — структурный паттерн, оборачивает объект, добавляя поведение. Класс-обёртка хранит ссылку на оригинал и делегирует вызовы, добавляя свою логику. Декоратор Python (@decorator) — синтаксический сахар, оборачивает функцию/класс. Они связаны, но не идентичны. Паттерн Decorator можно реализовать через Python-декоратор, но паттерн шире — работает с объектами в runtime, можно добавлять несколько обёрток динамически. Пример паттерна: BufferedReader(FileReader(file)) — цепочка обёрток.

Следующий вопрос

Как работать с пропущенными данными в pandas?