RxPY – 概述
本章解释了什么是反应式编程,什么是RxPY,它的操作者、特点、优点和缺点。
什么是反应式编程
反应式编程是一种编程范式,它处理数据流和变化的传播。它意味着,当一个组件发出数据流时,变化将通过反应式编程库传播到其他组件。变化的传播将继续进行,直到它到达最终的接收者。
通过使用RxPY,你可以很好地控制异步数据流,例如,对URL的请求可以通过使用观察器来追踪,并使用观察器来监听请求完成时的响应或错误。
RxPY为你提供了使用 Observables 处理异步数据流,使用 操作符 查询数据流,即过滤、求和、串联、映射,还可以使用 Schedulers 对数据流进行并发 。 创建一个Observable,给出一个具有on_next(v)、on_error(e)和on_completed()方法的观察者对象,它需要被 订阅 ,这样当事件发生时我们就能得到通知。
通过使用管道操作符,Observable可以使用多个操作符以连锁的形式进行查询。
RxPY提供了不同类别的操作符,如:-
- 数学运算符
-
变换运算符
-
过滤运算符
-
错误处理运算符
-
实用操作符
-
条件运算符
-
创建运算符
-
可连接运算符
本教程将对这些操作符进行详细解释。
什么是RxPy
根据RxPy的官方网站(https://rxpy.readthedocs.io/en/latest/ ),RxPY被定义为 一个使用Python中的可观察集合和可管道查询操作符来组成异步和基于事件的程序的库 。
RxPY是一个支持反应式编程的python库。RxPy是 Reactive Extensions for Python的缩写。 它是一个使用观测器来处理反应式编程的库,处理异步数据调用、回调和基于事件的程序。
RxPy的特点
在RxPy中,以下概念负责处理异步任务 —
可观察的
观察者是一个创建观察者的函数,并将其附加到具有数据流的源头,这些数据流来自于预期,例如,推文、计算机相关事件等。
观察者
它是一个具有on_next()、on_error()和on_completed()方法的对象,当与观察者发生交互时,例如,源与传入的Tweets等发生交互时,它将被调用。
订阅
当观测器被创建后,为了执行观测器,我们需要对其进行订阅。
操作员
操作符是一个纯函数,它接受可观察数据作为输入,输出也是一个可观察数据。你可以通过使用管道操作符在一个可观察数据上使用多个操作符。
主题
主体是一个可观察的序列,也是一个可以组播的观察者,即与许多已订阅的观察者对话。主体是一个冷观察者,也就是说,其值将在被订阅的观察者之间共享。
调度器
RxPy的一个重要特征是并发性,即允许任务并行执行。为了实现这一点,RxPy有两个操作符subscribe_on()和observe_on(),它们与调度器一起工作,将决定被订阅任务的执行。
使用RxPY的优点
以下是RxPy的优点
-
当涉及到处理异步数据流和事件时,RxPY是一个很棒的库。RxPY使用观测器来处理处理异步数据调用、回调和基于事件的程序的反应式编程。
-
RxPY在数学、转换、过滤、实用、条件、错误处理、连接等类别中提供了大量的操作符,在使用反应式编程时使生活变得简单。
-
并发性,即多个任务一起工作是通过RxPY的调度器实现的。
-
使用RxPY可以提高性能,因为处理异步任务和并行处理变得很容易。
使用RxPY的劣势
- 用可观察变量调试代码有点困难。