文章目录
前言
说到RxSwift,不得不提ReactiveX,什么是ReactiveX?ReactiveX与RxSwift有什么关系?请看下文。
1.ReactiveX
ReactiveX 是 Reactive Extensions 的缩写,简写为Rx。官方定义为一个使用可观察数据流进行异步编程的API。
Rx不仅仅是一个编程接口,更是一种编程思想的突破。它拓展了观察者模式,使你能够自由组合多个异步事件,而不需要去关心线程,同步,线程安全,并发数据以及I/O阻塞。
Rx结合了观察者模式、操作符、迭代器模式、调度器及函数式编程的精华。
- 观察者模式 Observable:对某些数据流(很广,可以是一些事件等)进行处理,使其变成可观察对象(Observable)序列,这样观察者(observer)就可以订阅这些序列;
- 操作符 Operators:然而对于订阅者来说(observer)某些选项(items)并不是自己需要的(需要过滤),某些选项(items)需要转换才能达到自己的目的;
- 迭代模式 Iterator:使集合或者序列中的值可以进行遍历&#