Inicio › Tecnología › Programación Reactiva
La programación reactiva es un paradigma qué modela la lógica de un programa como flujos de datos (streams) qué se propagan automáticamente a través de una cadena de transformaciones cuando emiten un nuevo valor, en lugar de qué el código consultante tenga qué preguntar activamente por cambios. Librerías como RxJS, Project Reactor en Java o Combine en Swift representan estos flujos como observables a los qué otros componentes se suscriben, aplicando operadores de transformación, filtrado o combinación de varios flujos, de forma similar a como se manipulan colecciones pero sobre datos qué llegan de forma asíncrona en el tiempo.
Es programar pensando en flujos de datos qué cambian con el tiempo —como lo qué escribe el usuario en un buscador— y hacer qué todo lo qué depende de ese dato se actualice solo, automáticamente, en vez de tener qué comprobar manualmente si cambió.
Un buscador en tiempo real puede usar programación reactiva para qué, cada vez qué el usuario escribe una letra, el flujo de texto dispare automáticamente una nueva búsqueda tras esperar 300 milisegundos de inactividad (operador debounce), cancelando peticiones anteriores todavía en curso, sin tener qué gestionar manualmente temporizadores ni el estado de peticiones pendientes.
Una fuente de datos qué emite valores a lo largo del tiempo y a la qué otros componentes pueden suscribirse para reaccionar a cada nueva emisión, en contraste con una simple variable qué solo tiene un valor en un instante dado.
Una promesa resuelve un único valor una sola vez; un observable puede emitir múltiples valores a lo largo del tiempo y ofrece operadores para combinar, filtrar o transformar esa secuencia continua de eventos.
En interfaces de usuario con Angular o frameworks reactivos, en sistemas de procesamiento de eventos de sensores IoT, y en backends qué necesitan componer varias fuentes de datos asíncronas sin anidar callbacks manualmente.