Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Выпилить inversify #135

Open
sk1e opened this issue Oct 16, 2019 · 3 comments
Open

Выпилить inversify #135

sk1e opened this issue Oct 16, 2019 · 3 comments

Comments

@sk1e
Copy link
Contributor

sk1e commented Oct 16, 2019

Не вижу практической пользы от этой монструозной штуки, учитывая архитектуру, и структуру проектов, на которые рассчитан стартер кит. Есть куда более простые альтернативы с прокидыванием зависимостей в аргументы/конструкторы, обновлением стора через экшены в middleware.
Только добавляет лишние КБ и ничем неоправданную сложность, которую тяжёло поддерживать тем же джунам. Усложнение на ровном месте.

@Znack
Copy link
Contributor

Znack commented Oct 18, 2019

inversify ещё же не type safe насколько я помню? А какие альтернативы предлагаешь?

@sk1e
Copy link
Contributor Author

sk1e commented Oct 18, 2019

inversify ещё же не type safe насколько я помню?

в какой-то мере

А какие альтернативы предлагаешь?

Там сейчас для двух штук используется: ContainersProvider и FeatureConnector, первый мы собираемся заменить на контексты в #134, для второго есть предложение с фабрикой #145. Инициализацию и деинициализацию фич я планировал через redux и его middleware сделать

@in19farkt
Copy link
Contributor

как минимум вместо инверсифай, можно рассмотреть First DI

  • по типам всё норм
  • минималистичное и интуитивное API
  • решает всё что нужно решать
  • в 11 раз меньше весит (837 B против 9.3 kB)
  • но не уверен можно ли на лету подменять реализации, у нас это используется только для хотрелоада

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants