Проблема часто не в том, что состояние «неправильное», а в том, что data-flow расползается в стороны.
В реактивной системе любое изменение тянет за собой каскад пересчётов. Если граф зависимостей прямой и узкий — всё предсказуемо. Если же один апдейт затрагивает лишние ветки, система начинает работать как интервью без фокуса: вроде бы разговор идёт, а полезный сигнал размывается.
Что это значит для продукта:
- меньше зависимостей между несвязанными состояниями;
- меньше «магических» обновлений в далёких местах;
- больше локальности: меняем одно — пересчитывается только то, что действительно связано.
Есть два пути оптимизации: либо упростить сам поток, либо изолировать изменения так, чтобы они не касались лишнего. В JTBD-логике это похоже на разделение jobs: одна причина — один контекст — один ожидаемый результат.
Чем прямее поток, тем легче понять, где система реагирует на реальное изменение, а где уже на собственный шум ⚙️
JTBD Notes
@JTBDNotesPro
РЕАКТИВНАЯ СИСТЕМА ЛОМAЕТСЯ НЕ В ТОТ МОМЕНТ
Этот пост опубликован в Telegram-канале JTBD Notes. Подписаться можно по ссылке: @JTBDNotesPro.