Как стать автором
Обновить

Комментарии 16

Забавная коррелляция: чем хуже решение, тем больше у него скачиваний. Интересно, это во всём фронтенде так или только в React-экосистеме?

Боюсь даже спрашивать, чего там на 6 мегабайт написали. ProRes иконки для девтула?

Странно почему в 2025 году в выборку не попал Redux-Saga. Конечно возможно потому что порог вхождения в Redux и без того низок, чего уж говорить еще и о Redux-Saga... Но все таки плюсы от саг недооценивать нельзя:

  • Возможность отмены действий.

  • Возможность прерывания действий.

  • Возможность управления списком асинхронных действий.

Представим задачу - дано массив ссылок на картинки, которые нужно загрузить на клиент. Задача сделать так, чтобы одновременно загружалось только 3 картинки. На сагах эта задача решается в несколько строк кода.

Redux saga - самый неудачный state management.

Вообще удивляет, кто ещё пользуется Redux в 2025? Пару лет назад уже про него все забыли.

Redux saga - самый неудачный state management.

Вот только пруфы не завезли, а так да, самый неудачный state management.

Вообще удивляет, кто ещё пользуется Redux в 2025?

Я пользуюсь Redux в 2025. Как и еще те, кто делают более четырех миллионов скачиваний в неделю. Пруфы тут https://www.npmjs.com/package/@reduxjs/toolkit

Пару лет назад уже про него все забыли.

Ну раз "все забыли", значит больше вопросов нет.

Я пользуюсь Redux в 2025

Тяжелый случай...Помянем.

 Как и еще те, кто делают более четырех миллионов скачиваний в неделю

Да, а знаете что делают миллиарды мух каждый день? Вперед...

А ещё знаете что делают миллионы героинщиков каждый день? Ну и так далее по списку.

Вот только пруфы не завезли, а так да, самый неудачный state management.

Вот пруфы
https://stackblitz.com/edit/vitejs-vite-dspjoj?file=src%2FApp.tsx&terminal=dev

При определении претендентов, которые должны были войти в пятерку мы брали именно популярность технологии, то есть количество скачиваний за неделю. Так, например, пакет redux-saga на 28.02.2025 года скачали 1 138 513 раз. В связи с этим он не попал в нашу выборку.

По поводу плюсов саг, которые вы перечислили, - это безусловное преимущество данной технологии. Но в этом и соль выбора) Каждый подбирает решение, которое будет удовлетворять текущим потребностям проекта.

Это всё-таки не совсем стейт-менеджер общего назначения так сказать

Получается, что так.

Но это не говорит о том, что на этих инструментах нельзя полноценно писать. Можно, конечно, с использованием стандартных реакт-хуков и это будет полноценно.

Вообще, в идеале определиться с терминологией, а что вообще такое стейт-менеджер и что он должен уметь делать.

Спасибо за ваши комментарии. Действительно, в начале статьи следовало определиться с определениями. 

Итак, стейт-менеджер - это глобальное хранилище данных внутри приложения или сайта. Он помогает управлять данными внутри объекта состояния (state) и упрощает работу с кодом.

Чем он точно должен обладать?

- набор переменных, 

- набор функций для изменения этих переменных,

- наблюдатель, который позволяет вам подписаться на изменения этих самых переменных.

Все остальные возможности, которые даруют нам перечисленные технологии - это разновидности имплементации стейт-менеджеров.

При подготовке статьи я пользовалась материалами, в которых были перечислены популярные пакеты для решения вопроса управлением состояния. Плюс посмотрела те, которые были у самой на слуху. Честно говоря, про react-query немного запамятовала.

Tanstack Query - 4 747 907 раз скачали наши коллеги за неделю. А это значит,  что технология должна была занять в моем рейтинге почетное третье место. Думаю, это отличный повод задуматься о второй части статьи с перечислениями "второго эшелона": 

Tanstack Query, 

Jotai (1 339 512  скачиваний в неделю),

Recoil (559 315  скачиваний в неделю),

Effector (43 011 скачиваний в неделю), 

Reatom (ему конечно еще следует подтянуть свои позиции😊 - 3 143 (скачиваний в неделю)), 

и т.д.

Возможно и так

Но кстати, стейт-менеджер не обязательно может быть глобальным, тот же MobX может использоваться как локальный стейт. Скорее, стейт-менеджер - это система, позволяющая реализовывать слой вью-модели. То есть он занимается подготовкой данных для слоя отображения. Но, опять же, мнения могут быть разные.

Юзаю zestand чуть ли не с первого релиза, мне хватает, а редакс даже трогать больше не хочется, посматриваю ещё на эффектор но с дрками у них проблема потому не хочется возиться с ним

Поддерживаю по поводу Zustand - отличная библиотека, и learning curve лучше чем redux.

Reatom еще есть и effector для тех кому интересно что-то новое пощупать

Когда видишь в статье на первом месте редакс, то дальше ожидаю jquery. Столько боли в одном только списке топа. Не усложняйте себе жизнь уже. Самого главного тут не написали. А именно про react-query и trpc.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий