什么是响应式编程?
如果要直接理解,可能比较抽象,但我们可以引用百度百科的例子;例如:a = b + c; 这句代码将b+c的值赋给a,而之后如果b和c的值改变了不会影响到a,然而,对于响应式编程,之后b和c的值的改变也动态影响着a,意味着a会随着b和c的变化而变化。
响应式编程过程中,一般有以下几个组件,Observable/Operator/Subscriber;对应到代码中就是不同类。这个流程,可以简单的理解为:Observable -> Operator1 -> Operator2 -> Operator3 -> Subscriber。
解释
Observable:可理解为能观察的对象;例如:一个数组。
Operator:就是对数据进行一些操作,例如:排序,过滤,两个数组合并;都是操作,同时还可以多个一起用。
Subscriber:订阅器;目的是接收处理后的数据;在一个方法中,或者回调方法中,可以接收到操作后的数组。
优点
对应同步编程来说,和普通编程差不都;但对于异步编程,使用响应式会很方便。
缺点
代码理解起来,稍微困难一点;另外由于响应式编程学习曲线陡峭,所以很多时候不知道如何实现,或者使用了不正确方法;同时对于团队要求也高一些。
网友评论