RxJava的功能与原理实现

用到的一些开源框架,介绍一个看过源码的,内部实现过程。

谈谈对RxJava的理解?

RxJava的作用,与平时使用的异步操作来比的优缺点?

 

又叫响应式编程、响应式扩展ReactiveX 是基于观察者模式设计的,核心对象只有 Observable 和 Observer。

 

Rx使代码简化

  1. 函数式风格:对可观察数据流使用无副作用的输入输出函数,避免了程序里错综复杂的状态
  2. 简化代码:Rx的操作符通通常可以将复杂的难题简化为很少的几行代码
  3. 异步错误处理:传统的try/catch没办法处理异步计算,Rx提供了合适的错误处理机制
  4. 轻松使用并发:Rx的Observables和Schedulers让开发者可以摆脱底层的线程同步和各种并发问题

 

框架源码有(待总结)

 异步操作很关键的一点是程序的简洁性,因为在调度过程比较复杂的情况下,异步代码经常会既难写也难被读懂。 Android 创造的AsyncTask 和Handler ,其实都是为了让异步代码更加简洁。RxJava 的优势也是简洁,但它的简洁的与众不同之处在于,随着程序逻辑变得越来越复杂,它依然能够保持简洁往往我们在使用异步任务的时候,使用AsyncTask,但是后面业务变得复杂后,整个代码要改的很复杂,各种判断,头昏脑胀,但是有了Rxjava我们就能很简洁的实现代码逻辑了)。

猜你喜欢

转载自blog.csdn.net/github_37130188/article/details/89788392