Open in19farkt opened 5 years ago
Есть соглашение именовать вещи, которые ты щас не знаешь куда вынести - inf (infrastructure), может твой конфиг это и есть инфраструктура, а может только то, что ты не знаешь куда вынести :) надо подумать над этим )
Пытаюсь навести порядок в структуре проекта. Сейчас это выглядит чуть лучше чем было, но всё еще далеко от идеала.
Что сделал:
src/config
все что связано с конфигурацией проекта, там собираются в кучку модули, фичи, экстра депенденсис, формированиеIAppReduxState
src/core
. Убрал прямую зависимость отfeatures/modules
, всё что нужно для запуска проекта забирается изsrc/config
Что недоделано и какие проблемы я вижу сейчас:
src/config
иsrc/core
имеют циклическую зависимость на уровне типов, чтобы это разрулить нужна третья сторона, но не охото ее вводить.Но нам в фичах и в модулях нужны типы, которые возможно сформировать только в
core
илиconfig
, например типIAppReduxState
илиIDependencies
. А еще у нас вcore
формируетсяIocContainer
, который также может понадобиться в модулях/фичах/сервисах.FeatureConnector
иContainersProvider
. Первый никак не зависит от фич и модулей, но зависит отIocContainer
, который формируется вcore
. У второго зависимости те же что и у первого, но к ним добавляются контейнеры из фич.Принимается критика, пожелания, предложения :) Хз, возможно я вообще не в ту сторону пошел.