概述
引言
响应式编程并不是一个新概念。早在90年代末,微软的一名计算机科学家就提出了响应式编程。用来设计和开发微软的某些库。
定义
响应式编程(Reactive Programming,RP)的定义有很多个版本,如wiki、stackoverflow还有ReactiveX。但是每个版本的中心思想都是:响应式编程(RP)是一种基于异步数据流概念的编程范式。而RP的精髓也在于对数据流(Dataflow, Event)的高效处理。
而Rx,及Reactive Extensions,是对微软的.NET的一个响应式扩展。国外的一些大牛,对Rx也有一些自己的理解,如:The introduction to Reactive Programming you’ve been missing ,及其译文版。
RxJava
Rx,及Reactive Extensions。Rx是一种编程模型。Rx借助可观察的序列来提供一种简单的方式来创建异步的,基于事件驱动的程序。
2013年,Netflix第一次向世界展示了RxJava。 RxJava的主要特点有:
- 易于并发从而更好的利用服务器的能力
- 易于有条件的异步执行
- 一种避免回调地狱的更好方式
- 一种响应式方法
RxJava Observable类源自于Gang of Four的观察者模式。但有高于观察者模式:
- 生产者在没有数据产生时发出通知:onComplete()
- 生产者发生错误时发出通知:onError()
- RxJava的Observable能够组合而不是嵌套,从而避免回调地狱
Rx编程思想
在传统的命令式编程中,如表达式a=b+c。即把b的值和c的值相加之后,赋值给a之后,不管b和c如果变化都不会影响a;但是,在响应式的世界里,a的值会随着b的值或c的值变化而变化。
亦即,响应式可以将相关模型的变化直接反应到视图上。
最后
以上就是俏皮短靴为你收集整理的响应式编程:理解响应式编程的全部内容,希望文章能够帮你解决响应式编程:理解响应式编程所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复