Комментарии 8
И тогда после неправильно спроектированной архитектуры нормальная работа может стать невозможной. У меня есть проект, так же на Flutter, который я ради интереса попробовал написать через архитектуру MobX. Проект разросся. Работать стало, мягко говоря, некомфортно, пришлось все переписывать на Redux.

Через архитектуру MobX? Нет такого понятия.
MobX лишь дает настоящую реактивность, а как именно организовывать архитектуру, это уже сугубо личное дело каждого разработчика.
Так вот, вы просто сделали плохую архитектуру. Причем тут MobX???
MobX еще весь интерфейс обмажет Obx и плохо контролируемыми изменениями
плохо контролируемыми изменениями

Да? С этого момента по подробнее, что же там не контролируемое интересно?
Плюсы:

1. иммутабельность, сериализация, дефолтные значения с built_value “из коробки”

2. быстрое обучение новичков из мира фронтенда знающих Redux

3. почти безболезненное включение/выключение фич

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

5. доменная часть, независимая от UI — как пример чистой архитектуры, что дает возможность поместить ее (целиком Redux состояние со всеми миддлварами и эпиками, выполняющими много работы в бекграунде) в свой отдельный изолят


1. иммутабельность

Cомнительный плюс.

2. быстрое обучение новичков из мира фронтенда знающих Redux

Ну как бы какая разница, если быстрое обучение новичков из мира фронтенда знающих любой стейт менеджер который есть во Flutter, в том числе MobX.

3. почти безболезненное включение/выключение фич

Относится к любому стороннему стейт менеджменту, к MobX в том числе.

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

Относится к любому стороннему стейт менеджменту, к MobX в том числе.

5. доменная часть, независимая от UI — как пример чистой архитектуры, что дает возможность поместить ее (целиком Redux состояние со всеми миддлварами и эпиками, выполняющими много работы в бекграунде) в свой отдельный изолят

Относится к любому стороннему стейт менеджменту, к MobX в том числе.
Может есть какое-то небольшое приложение чтобы посмотреть структуру и архитектуру проекта в целом?
Откройте для себя GetX и забудите про всякие редуксы, провайдеры, блоки.Флатер это еще то болото и на сегодня лучшее(простое и понятное) решение это GetX
У меня есть проект, так же на Flutter, который я ради интереса попробовал написать через архитектуру MobX. Проект разросся. Работать стало, мягко говоря, некомфортно, пришлось все переписывать на Redux.  
Вы не пробовали проконсультироваться с другими разработчиками, у которых большой опыт работы с Mobx? Уверен, что тогда бы не пришлось все переписывать.

Не хотите вкратце здесь поделиться тем, как вы организовали архитектуру в вашем Mobx проекте? Может я или кто-нибудь другой порекомендует, как улучшить.  
MaZaAa верно написал, что для Mobx нет стандартной архитектуры, как в случае с Redux. Поэтому в случае использования Mobx для больших проектов нужно уметь разделять код на слои, более менее понимать Single Responsibility Principle. C Mobx (и не только) может получится гораздо лучше, чем с Redux, но это зависит от навыков проектирования. В случае redux надо следовать уже придуманной за вас архитектуре. Довольно паршивой, но работающей, т.к. код, как-никак, разделен на слои.

Насчет структуры папок в статье, рекомендую почитать: softwareengineering.stackexchange.com/questions/338597/folder-by-type-or-folder-by-feature/338610
redux.js.org/style-guide/style-guide#structure-files-as-feature-folders-or-ducks 
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Информация

Дата основания
2008
Местоположение
Россия
Сайт
www.ligastavok.ru
Численность
1 001–5 000 человек
Дата регистрации

Блог на Хабре