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

Reacting for the First Time

In the previous chapter, you started understanding the motivations behind using functional reactive programming in your systems; you also saw how a program using this paradigm fared against a program without it. You learned how reactive programming can improve code readability and testability by decoupling your event sources from the action you take when the action occurs.

We started with some basic examples using bacon.js as the reactive programming library for JavaScript. In the examples, we began with creating our first EventStream from an interval. Then we started using some operators (map() and take()). Finally, we subscribed to this event source to take actions in the case of an event occurrence. This was just a kind introduction to functional reactive programming.

When reading most of the functional reactive programming libraries (for any language), you will see a lot of diagrams explaining how the operator works. In the previous chapter, I presented the following diagram to illustrate a filter function:

We will cover what this illustration means in detail in this chapter. Learning how to read this will make reading documentation on libraries a lot easier.

Functional reactive programming is a paradigm which is hard to master, so after the quick introduction, you'll now move on to learning how to implement more complex programs using the bacon.js library.

This chapter will cover the following points:

  • Understanding bacon.js observable objects (EventStream and Property) and their differences
  • Modeling a functional reactive program
  • Subscribing to an observable
  • Unsubscribing from an observable
  • Reading a reactive programming operator diagram
  • Using operators to transform an observable
主站蜘蛛池模板: 资中县| 喜德县| 龙口市| 井冈山市| 楚雄市| 黄大仙区| 丹巴县| 洞口县| 嘉兴市| 绥中县| 镇原县| 新干县| 广河县| 南充市| 南宫市| 名山县| 永吉县| 长沙县| 延安市| 乌拉特后旗| 西贡区| 祁阳县| 弥勒县| 张掖市| 新蔡县| 福鼎市| 德州市| 安达市| 黔南| 岳阳县| 饶阳县| 两当县| 宜都市| 海兴县| 白银市| 浮梁县| 涡阳县| 贞丰县| 黑河市| 光泽县| 开江县|