ответ

0

Я задал себе тот же вопрос, и я думаю, что между этими двумя шаблонами не так много изменений.

Если у вас несколько экземпляров одного и того же типа с делегатами, и вы хотите использовать его как минимум для 2 из них, вы должны их отличить, чтобы вы могли добавить условие в свой метод делегата. С реактивной это не так, потому что вы действуете непосредственно на выходном объекте.

Вы можете использовать для этого реактивную способность, если у вас уже есть реактивная библиотека для других видов поведения или если вы просто хотите улучшить свои навыки с помощью этого шаблона. В противном случае, я бы не рекомендовал использовать, он просто увеличит размер вашего приложения.

PS: Это только мое личное мнение, я не очень-то знаком с реактивным, но это кажется правильным для меня.

0

Сигналы многоадресной рассылки, принимают блоки в качестве наблюдателей и не требуют, чтобы конкретный тип соответствовал делегату. Вы также можете составлять сигналы с помощью операторов, например take(until: trigger), чтобы ограничить время жизни сигнала.

В конце концов, эти структуры должны быть декларативными и выразительными и помочь вам поддерживать архитектуру приложения и лучше определять коды.