官术网_书友最值得收藏!

A Look at Reactive Extensions

Reactive Extensions (Rx) is a Reactive Programming library from Microsoft that's used for building complex asynchronous programs. It models time-varying values and events as observable sequences and is implemented by extending the Observer design pattern.

Its first target platform was .NET, but Netflix has ported Rx to JVM under the name RxJava. Microsoft also develops and maintains a port of Rx to JavaScript called RxJS, which is the tool we used to build the sine wave application. The two ports work a treat for us, since Clojure runs on JVM and ClojureScript in JavaScript environments.

As we saw in Chapter 1, What is Reactive Programming?, Rx is inspired by Functional Reactive Programming but uses different terminology. In FRP, the two main abstractions are behaviors and events. Although the implementation details are different, observable sequences represent events. Rx also provides a behavior-like abstraction through another data type, called BehaviorSubject.

In this chapter, we will cover the following topics:

  • Rx's main abstraction: observables
  • The duality between iterators and observables
  • Creating and manipulating observable sequences

主站蜘蛛池模板: 保康县| 南涧| 雷波县| 百色市| 林周县| 兰州市| 汽车| 崇礼县| 邹城市| 大英县| 佛坪县| 六枝特区| 宁河县| 丰宁| 七台河市| 抚顺市| 合肥市| 衡阳市| 蒲江县| 建始县| 万荣县| 吉木萨尔县| 手游| 清水县| 泰和县| 馆陶县| 什邡市| 通辽市| 南丹县| 丹凤县| 买车| 渑池县| 鄄城县| 吐鲁番市| 平顶山市| 衡阳市| 临沭县| 贺州市| 江津市| 武宣县| 寿光市|