Android优点与缺点:事件总线和RxJava

前端之家收集整理的这篇文章主要介绍了Android优点与缺点:事件总线和RxJava前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在应用程序中使用了Event Bus(即,greenrobot / EventBus).但是我在使用事件总线方面有一些缺点:

链接执行任务很困难
>很多类来表示事件
>不太清楚的代码(嗯,它仍然可以追踪,但不是那么清楚)

我一直在研究新技术来应对这个问题.而且我读了很多关于RxJava,并且想知道它是否可以成为一个解决方案.

所以我关于RxJava的问题(根据我最近读过的):

>可以随时注册RxJava观察者?所以不只是创建Observable时.使用EventBus这是可能的,我可以随时订阅,而不仅仅是在创建Observable时.
>如何处理发布相同类型事件的两个或多个发布商(例如:导航事件)?
>紧密耦合发布者和订阅者,意味着我必须每次都明确指定发布者.所以我不得不担心事件的类型,而且也是起源者.使用EventBus,我只需要担心事件的类型,而不是发起者.

解决方法

1)一旦有一个Observable的实例,你可以随时和任何线程,甚至同时订阅它.

2)我们通常通过Observable.merge()合并多个可观察数据流,或者使用序列化的PublishSubject.

3)如果观察到可观测值,可能会涉及数十个上游操作符和资源,但无论如何,您将获得一个连续的价值流.你只需要保持一个Observable代表一些事件来源,观察者不需要知道事件是否被合并,过滤,通过网络进行了往返,并在到达你的onNext()方法之前被延迟.您可以自然地实现或使用一些查找服务,这将使您能够观察到可以减少耦合,但是对于RxJava,耦合通常不是问题.

原文链接:https://www.f2er.com/android/311639.html

猜你在找的Android相关文章