RxPY - 概述

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


什么是响应式编程?

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

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

RxPY 让您可以使用 Observables 处理异步数据流,使用 Operators 查询数据流,即 filter、sum、concat、map,还可以使用 Schedulers 对数据流使用并发。 创建一个 Observable,为观察者对象提供 on_next(v)、on_error(e) 和 on_completed() 方法,需要订阅以便我们在事件发生时收到通知。

可观察

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

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

  • 数学运算符

  • 转换运算符

  • 过滤运算符

  • 错误处理运算符

  • 实用运算符

  • 条件运算符

  • 创建运算符

  • 可连接的运算符

本教程详细介绍了这些运算符。


什么是 RxPy?

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

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


RxPy 的特点

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

可观察对象

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

观察者

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

订阅

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

运算符

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

主题

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

调度器

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


使用RxPY的优势

以下是RxPy的优点 −

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

  • RxPY 在数学、转换、过滤、实用程序、条件、错误处理、连接类别中提供了大量运算符,在与反应式编程一起使用时让生活变得轻松。

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

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


使用RxPY的缺点

  • 使用 observables 调试代码有点困难。