Какие стек менеджеры важны на практике и как их применять?
Массивы и структуры данных
«Стек менеджеры» — вероятно, имеются в виду state-менеджеры: Redux (Toolkit), Zustand, MobX, Jotai, Recoil для клиентского состояния и TanStack Query/SWR для серверного. Применяются по сложности и типу данных.
State-менеджеры (управление состоянием)
Redux Toolkit
Централизованное предсказуемое состояние, строгий поток, DevTools.
- Когда: крупные приложения, сложное общее состояние.
Zustand
Минималистичный store на хуках, мало кода.
const useStore = create((set) => ({ count: 0, inc: () => set((s) => ({ count: s.count + 1 })) }));- Когда: средний размер, простой глобальный стор.
MobX
Реактивность через observables, автообновление.
- Когда: реактивный стиль, computed-значения.
Jotai (Recoil заархивирован в 2025 году)
Атомарное состояние (маленькие независимые атомы).
- Когда: гранулярное состояние.
Context API (встроенный)
Транспорт данных без prop drilling.
- Когда: редко меняющиеся глобальные данные (тема, юзер).
Серверное состояние
TanStack Query / SWR — кеш, рефетч, синхронизация с бэкендом.
- Когда: данные с сервера (отдельно от клиентского состояния).
Как выбирать
- Крупное сложное → Redux Toolkit.
- Минимализм → Zustand.
- Реактивность → MobX.
- Гранулярное → Jotai.
- Редкие глобальные → Context.
- Серверные данные → TanStack Query/SWR.
Коротко для собеседования
State-менеджеры: Redux Toolkit (крупные приложения, предсказуемость, DevTools), Zustand (минимализм), MobX (реактивность, computed), Jotai/Recoil (атомы), Context (редкие глобальные данные). Серверное состояние — TanStack Query/SWR (кеш, рефетч). Выбор по сложности состояния; серверные данные держат отдельно.