Я прочитал из книги Cocoa Design Patterns, что шаблон декоратора используется во многих классах Cocoa
, включая NSAttributedString
. (который не наследуется от NSString
). Я просмотрел реализацию NSAttributedString.m
, и это было выше моего понимания, но мне было бы интересно узнать, успешно ли кто-нибудь на SO реализовал этот шаблон И они готовы поделиться.
Требования адаптированы из этой ссылки на шаблон декоратора , и, поскольку в Objective-C нет абстрактных классов, Компонент
и Декоратор
должны быть похожи. достаточно, чтобы абстрагировать классы и служить их первоначальной цели (т.е. я не думаю, что они могут быть протоколами, потому что вы должны иметь возможность выполнять [супероперацию]
.
Я был бы очень рад увидеть некоторые из ваших реализаций декоратора.