RxSwift 文档:函数响应式编程
函数响应式编程
函数响应式编程是种编程范式。它是通过构建函数操作数据序列,然后对这些序列做出响应的编程方式。它结合了函数式编程以及响应式编程。
函数式编程
函数式编程是种编程范式,它需要我们将函数作为参数传递,或者作为返回值返还。我们可以通过组合不同的函数来得到想要的结果。
函数试编程的优点:
- 灵活
- 高复用
- 简洁
- 易维护
- 适应各种需求变化
函数式编程 -> 函数响应式编程
1 | // 假设用户在进入页面到离开页面期间,总共点击按钮 3 次 |
这样处理点击事件是非常理想的,但是问题是这个序列里面的元素(点击事件)是异步产生的,传统序列是无法描叙这种元素异步产生的情况。为了解决这个问题,于是就产生了可被监听的序列 Observable<Element>
。它也是一个序列,只不过这个序列里面的元素可以是同步产生的,也可以是异步产生的:
1 | // 按钮点击序列 |
这里 taps
就是按钮点击事件的序列。然后我们通过弹出提示框,来对每一次点击事件做出响应。这种编程方式叫做响应式编程。我们结合函数式编程以及响应式编程就得到了函数响应式编程。
1 | passwordOutlet.rx.text.orEmpty |
我们通过不同的构建函数,来创建所需要的数据序列。最后通过适当的方式来响应这个序列。这就是函数响应式编程。