169 похожих чатов

Ребята, кто применяет стейт-менеджмент в больших проектах! не хотели бы

в этот субботний вечер обсудить за архитектуру ?

12 ответов

25 просмотров

Это ngrx? Мне тоже это интересно

да че там обсуждать. стейт для глобальных данных, для компонентов хватит и рх-потока. Хотя не, подождите, рх-потока хватит для всего :)

Sergei-Sergeevich Автор вопроса
xxtux Shvets
да че там обсуждать. стейт для глобальных данных, ...

вот отлично! сейчас кейсов подгоню. между тем моя ситуация такова что я вынужденно вписался в эту redux тему поскольку в проекте буквально каждая фича на ней.

Sergei Sergeevich
вот отлично! сейчас кейсов подгоню. между тем моя ...

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

Sergei-Sergeevich Автор вопроса
xxtux Shvets
для локальных данных есть практика просто создават...

первый раз такое вижу. у нас архитектура построена примерно следующим образом: проект поделен на фичи, каждая из которых работает с набором сущностей. к примеру фича "таски". и каждая фича имеет свой стэйт, который обрабатывает CRUD операции над сущностями. типа ТаскСтейт у него есть таски, фильтр, что то для пагинации и прочее. и компоненты восновном глупые - дергают события ("установить фильтр", "запросить таски", "создать таск" итд)

Sergei-Sergeevich Автор вопроса
Sergei Sergeevich
первый раз такое вижу. у нас архитектура построена...

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

У нас в rozetka была такая раньше структура bSubject в сервисах, и вроде все работало и покрывало нужды, пока проект не разросся до гигантских масштабов, и в итоге мы получили неуправляемую кашу из сотен сервисов в которых тысячи сабджектов, и это все превратилось в ад, без нормального дебага было сложно понять, что откуда и когда пришло, в какой последовательности, конструкторы умных компонентов стали выглядишь просто огроменными из за DI этих стейт сервисов, а написание тестов стало невыносимо. Переехав на ngrx все проблемы ушли

Sergei-Sergeevich Автор вопроса
Eugene Rusakov
У нас в rozetka была такая раньше структура bSubje...

Благодарю. Используете ли вы локальные стейты или же единый глобольный стейт покрывает все ваши задачи?

Sergei Sergeevich
Благодарю. Используете ли вы локальные стейты или ...

Общий стейт покрывает все кейсы, мы стараемся избегать локальных стейтов по причине того они обычно используются в смарт компонентах, которые взаимодействуют с дами, вот как раз мы выделяем фича-стейт такой для такого смарт компонента в ngrx

Sergei-Sergeevich Автор вопроса
Eugene Rusakov
Общий стейт покрывает все кейсы, мы стараемся избе...

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

Sergei-Sergeevich Автор вопроса
Eugene Rusakov
Общий стейт покрывает все кейсы, мы стараемся избе...

по хорошему в большинстве случаев глобальные состояния мне не нужны - нет необходимости хранить их вечно или шарить всему приложению. но этот ньюанс с путанницей в провайдерах я учту. спасибо.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта