PROGRAMACIÓN REACTIVA

 

Programación reactiva

No debemos confundir programación reactiva con sistemas reactivos. Los sistemas reactivos están definidos en el Manifiesto Reactivo.

Al igual que el paradigma anterior la programación reactiva está basada en el desarrollo declarativo. Se enfoca en flujos (streams) de datos asíncronos y en un modelo basado en eventos, permitiendo la propagación de los cambios de foma automática, donde la información se envía al consumidor a medida que está disponible. Esto permite realizar tareas en paralelo no bloqueantes que ofrecen una mejor experiencia al usuario.

Los lenguajes que soportan la programación reactiva suelen tener su propia librería con una serie de funciones para crear, transfomar, combinar o filtrar los streams. Un stream es una secuencia de eventos (pudiendo ser de cualquier tipo) ordenados en el tiempo que puede devolver tres tipos de resultados: un valor, un error o una señal de completado. Estos resultados generados se emiten de forma asíncrona a través de una función que es ejecutada por el suscriptor u observador. Lo mencionado es, básicamente, el patrón Observer, ya que tenemos un sujeto (el stream) que está siendo observado por las funciones mencionadas (observadores o suscriptores).

No hay comentarios:

Publicar un comentario

Contenido desarrollo de software - Arquitectura Software

ENUM en JAVA