1 什么是响应式编程
响应式编程是一种面向数据流和变化传播的声明式编程范式。
响应式编程是一种通过异步和数据流来构建事物关系的编程模型。
响应式思想是一种变化传递的思想,当数据变化后,会直接或者间接导致引用它的其他数据均发生相应的变化。一般而言,生产者只负责生成并发事件,然后消费者来监听并负责定义如何处理事件的变化传递方式。
这些事件连接起来会形成一串数据流,如果我们对每个数据流的都能够及时做出响应,就会提高系统的响应能力。
- 响应式的核心特点之一:变化传递(propagation of change)。一个单元格变化之后,会像多米诺骨牌一样,导致直接和间接引用它的其他单元格均发生相应变化。
- 响应式的另一个核心特点:基于数据流(data stream)。这一次一次的操作事件连起来就是一串数据流(data stream),如果我们能够及时对数据流的每一个事件做出响应,会有效提高系统的响应水平。
- **“声明式(declarative)”**的编程范式。通过四个串起来的
map
调用,我们先声明好了对于数据流“将会”进行什么样的处理,当有数据流过来时,就会按照声明好的处理流程逐个进行处理。**声明式编程范式的威力在于以不变应万变。**无论到来的元素是什么,计算逻辑是不变的,从而形成了一种对计算逻辑的“绑定”。