Ответ
Реактивное программирование — это парадигма, основанная на потоках данных и автоматическом распространении изменений. Вместо явного управления состоянием, система реагирует на изменения данных (например, события, пользовательский ввод) и автоматически обновляет зависимые части приложения.
Пример с RxJS:
import { fromEvent } from 'rxjs';
const button = document.querySelector('button');
fromEvent(button, 'click').subscribe(() => console.log('Clicked!'));
Здесь поток событий клика подписывается на колбэк, который выполняется при каждом клике.
Ключевые концепции:
- Потоки (Observables): последовательности событий или данных.
- Операторы: методы для трансформации, фильтрации потоков (например,
map
,filter
). - Подписка (Subscription): механизм реакции на данные из потока.
Используется в библиотеках типа RxJS, MobX, Vue 3 Reactivity.