RxPY - Descripción general

Este capítulo explica qué es la programación reactiva, qué es RxPY, sus operadores, características, ventajas y desventajas.

¿Qué es la programación reactiva?

La programación reactiva es un paradigma de programación que se ocupa del flujo de datos y la propagación del cambio. Significa que, cuando un componente emite un flujo de datos, el cambio se propagará a otros componentes mediante una biblioteca de programación reactiva. La propagación del cambio continuará hasta que llegue al receptor final.

Al usar RxPY, tiene un buen control sobre los flujos de datos asincrónicos, por ejemplo, una solicitud realizada a la URL se puede rastrear mediante el uso de observable, y use el observador para escuchar cuando la solicitud está completa para respuesta o error.

RxPY le ofrece manejar flujos de datos asincrónicos usando Observables, consulta los flujos de datos usando Operators es decir, filtrar, sumar, concatizar, asignar y también hacer uso de la concurrencia para los flujos de datos utilizando Schedulers. Crear un Observable, le da a un objeto observador con los métodos on_next (v), on_error (e) y on_completed (), que necesita sersubscribed para que recibamos una notificación cuando ocurra un evento.

El Observable se puede consultar usando múltiples operadores en un formato de cadena usando el operador de tubería.

RxPY ofrece operadores en varias categorías como: -

  • Operadores matemáticos

  • Operadores de transformación

  • Operadores de filtrado

  • Operadores de manejo de errores

  • Operadores de servicios públicos

  • Operadores condicionales

  • Operadores de creación

  • Operadores conectables

Estos operadores se explican en detalle en este tutorial.

¿Qué es RxPy?

RxPY se define como a library for composing asynchronous and event-based programs using observable collections and pipable query operators in Python según el sitio web oficial de RxPy, que es https://rxpy.readthedocs.io/en/latest/.

RxPY es una biblioteca de Python para admitir la programación reactiva. RxPy significaReactive Extensions for Python. Es una biblioteca que usa observables para trabajar con programación reactiva que se ocupa de llamadas de datos asíncronos, devoluciones de llamada y programas basados ​​en eventos.

Características de RxPy

En RxPy, los siguientes conceptos se encargan de manejar la tarea asincrónica:

Observable

Un observable es una función que crea un observador y lo adjunta a la fuente que tiene flujos de datos que se esperan de, por ejemplo, tweets, eventos relacionados con la computadora, etc.

Observador

Es un objeto con los métodos on_next (), on_error () y on_completed (), que se llamará cuando haya interacción con el observable, es decir, la fuente interactúa para un ejemplo de Tweets entrantes, etc.

Suscripción

Cuando se crea el observable, para ejecutar el observable debemos suscribirnos a él.

Operadores

Un operador es una función pura que toma un observable como entrada y la salida también es un observable. Puede utilizar varios operadores en datos observables mediante el operador de tubería.

Tema

Un sujeto es una secuencia observable, así como un observador que puede realizar multidifusión, es decir, hablar con muchos observadores que se han suscrito. El sujeto es un observable frío, es decir, los valores serán compartidos entre los observadores que se hayan suscrito.

Programadores

Una característica importante de RxPy es la concurrencia, es decir, permitir que la tarea se ejecute en paralelo. Para que eso suceda, RxPy tiene dos operadores subscribe_on () y observe_on () que trabajan con planificadores y decidirán la ejecución de la tarea suscrita.

Ventajas de usar RxPY

Las siguientes son las ventajas de RxPy:

  • RxPY es una biblioteca impresionante cuando se trata del manejo de eventos y flujos de datos asíncronos. RxPY utiliza observables para trabajar con programación reactiva que se ocupa de llamadas de datos asíncronos, devoluciones de llamada y programas basados ​​en eventos.

  • RxPY ofrece una gran colección de operadores en categorías matemáticas, transformación, filtrado, utilidad, condicional, manejo de errores, unión que hace la vida más fácil cuando se usa con programación reactiva.

  • La simultaneidad, es decir, el trabajo de múltiples tareas juntas se logra usando programadores en RxPY.

  • El rendimiento se mejora con RxPY, ya que se facilita el manejo de tareas asíncronas y el procesamiento paralelo.

Desventaja de usar RxPY

  • Depurar el código con observables es un poco difícil.