RxPY - 概述


本章解释了什么是反应式编程、什么是 RxPY、它的运算符、特性、优点和缺点。

什么是反应式编程?

响应式编程是一种编程范例,处理数据流和变化的传播。这意味着,当一个组件发出数据流时,变化将通过反应式编程库传播到其他组件。变化的传播将持续下去,直到到达最终接收者。

通过使用RxPY,您可以很好地控制异步数据流,例如,可以使用observable跟踪对URL发出的请求,并使用观察者监听请求何时完成以获取响应或错误。

RxPY 使您可以使用Observables处理异步数据流,使用运算符(即过滤器、总和、连接、映射)查询数据流,还可以使用调度程序利用数据流的并发性。创建一个 Observable,为观察者对象提供 on_next(v)、on_error(e) 和 on_completed() 方法,需要订阅该对象,以便我们在事件发生时收到通知。

可观察的

通过使用管道运算符,可以使用链格式的多个运算符来查询 Observable。

RxPY 提供各种类别的运算符,例如:−

  • 数学运算符

  • 转型运营商

  • 过滤运算符

  • 错误处理运算符

  • 公用事业运营商

  • 条件运算符

  • 创建操作符

  • 可连接的操作员

本教程详细解释了这些运算符。

什么是 RxPy?

根据 RxPy 的官方网站( https://rxpy.readthedocs.io/en/latest/),RxPY被定义为一个在 Python 中使用可观察集合和可管道查询运算符来编写异步和基于事件的程序的库

RxPY 是一个支持响应式编程的 python 库。RxPy 代表Python 的响应式扩展。它是一个使用可观察量进行反应式编程的库,可处理异步数据调用、回调和基于事件的程序。

RxPy的特点

在 RxPy 中,以下概念负责处理异步任务 -

可观察的

可观察对象是一种创建观察者并将其附加到具有预期数据流的源的函数,例如推文、计算机相关事件等。

观察者

它是一个具有 on_next()、on_error() 和 on_completed() 方法的对象,当与可观察对象交互时,即源与示例传入的推文等进行交互时,将调用该对象。

订阅

创建可观察量后,要执行可观察量,我们需要订阅它。

运营商

运算符是一个纯函数,它将 observable 作为输入,输出也是一个 observable。您可以通过使用管道运算符对可观察数据使用多个运算符。

主题

主题是一个可观察的序列,也是一个可以多播的观察者,即与许多已订阅的观察者交谈。主题是冷可观察的,即值将在已订阅的观察者之间共享。

调度程序

RxPy 的一项重要特性是并发性,即允许任务并行执行。为了实现这一点,RxPy 有两个运算符 subscribe_on() 和observe_on(),它们与调度程序一起工作,并决定订阅任务的执行。

使用 RxPY 的优点

以下是 RxPy 的优点 -

  • 在处理异步数据流和事件方面,RxPY 是一个很棒的库。RxPY 使用可观察量来进行反应式编程,处理异步数据调用、回调和基于事件的程序。

  • RxPY 提供了大量数学、转换、过滤、实用、条件、错误处理、连接类别等运算符,使反应式编程的使用变得轻松。

  • 并发性,即多个任务一起工作是通过使用 RxPY 中的调度程序来实现的。

  • 使用 RxPY 可以提高性能,因为异步任务的处理和并行处理变得容易。

使用 RxPY 的缺点

  • 使用可观察量调试代码有点困难。