Design patterns в swift с нуля: урок 7 - Decorator (Декоратор)
The Decorator Pattern Explained and Implemented in Java | Structural Design Patterns | Geekific
Декоратор (Decorator) - паттерны проектирования в iOS
Комментарии
Круто. Можно пойти дальше и создать базовый абстрактный класс чтобы не дублировалось вложенное поле.
nicholaswhite
Отличное видео, которое обучает как нарушить Single responsibility. Декоратор должен расширять класс добавляя фич предыдущему классу, а не изменять область применения. Можно же нормально показать на InputStream. Если человек на собеседовании обернет email notification в sms notification, на этом с ним можно будет закончить.
ple-ash
Мне нравятся ваши видео! Хотелось бы увидеть видео про исключения
foreverholy
Подскажите, в чем отличие от прокси. Не теоретическая - это по схеме классов понятно, а практически? Например декоратор может бесконечно обертывать себя как матрёшка, но и прокси ведь тоже на прокси можно сделать?
MrRomanvideo
Спасибо за видео, но применение/реализация шаблона разочаровывает(не ваша вина просто не могу понять зачем его вообще придумали и применяют).
какая-то вложеность классов, один не может без другого..
Есть куда проще решение. Создаем что-то типа List<Notification> list, добавляем что надо и что имплементирует наши уведомления list.add(MyNotification), и просто пробегаемся list.forEach(notify -> notify.send()). Каждому юзеру можно сделать свой список уведомлений(свой list), или еще рациональнее, свой фильтр на общий лист.