Каков современный способ создания eventbus с использованием RxJava2?
В моем предыдущем проекте я использовал Otto EventBus для связи фрагментов с операциями, прикрепленных событий для вложенных фрагментов и действий, а также для обработки push-уведомлений.
Для будущих проектов я хотел использовать RxJava2 и построить Eventbus, используя его. Я хотел знать, каков современный способ сделать это, поскольку блоги и репозитории, связанные с ними, старые.
Находки об этом до сих пор:
Библиотеки EventBus устарели в пользу RxJava (хорошо)
Создать eventbus с использованием RxJava просто. (Хорошо) https://blog.kaush.co/2014/12/24/implementing-an-event-bus-with-rxjava-rxbus/
Используйте RxRelays не только Rx Subject (хорошо)
- RxRelay репозиторий утверждает, что когда ваше приложение становится все более и более реактивным, вам не понадобится RxRelay (!!)
Каков современный способ достижения шаблона Eventbus, который также может обрабатывать события с ошибками в RxJava2. Следует ли вообще использовать шаблон eventbus в мире RxAndroid. Существуют ли альтернативные подходы к шаблону Eventbus?
1 ответ
Одна из самых мощных архитектур для обработки событий и состояний в реактивном мире - это поток. Он много заимствует из автобусов для мероприятий, но добавляет к нему аккуратные вещи.
Это не только решает проблему "липкости", но также позволяет вам поддерживать состояние между изменениями конфигурации и между различными экранами (действиями или фрагментами) детерминистическим и легко тестируемым способом.
Это довольно хорошая статья для начала, но есть также множество библиотек, которые стремятся упростить ее для вас (я сам создаю одну из них)