Декораторы считаются альтернативой подклассам в программировании, потому что они позволяют динамически добавлять новую функциональность к существующему объекту. 12
Подкласс добавляет поведение во время компиляции, и изменение влияет на все экземпляры исходного класса. 4 Декораторы же обеспечивают новое поведение во время выполнения для отдельных объектов, и их можно комбинировать для каждого конкретного использования. 4