Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 April 29

M

Michael in NodeUA - JavaScript and Node.js in Ukraine
С этим, конечно, согласен
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
Типо у вас реакт. Вы юзаете классы или на функциях?
источник

M

Michael in NodeUA - JavaScript and Node.js in Ukraine
Функции
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
Ну функции обычно не засовывют в контейнер.
источник

M

Michael in NodeUA - JavaScript and Node.js in Ukraine
Не знаю, что значит контейнер, но как я понял di не очень нужно при хуках?
источник

r

rvv880 in NodeUA - JavaScript and Node.js in Ukraine
Чтобы зависимости держать в одном месте, а не по всему проекту
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
что значит в одном месте?)
источник

Y

Yuri in NodeUA - JavaScript and Node.js in Ukraine
я думаю, к DI нужно подходить издалека. Например, начать с изучения clean code. А вот садиться и внедрять его в проект, если выгода непонята - такая себе затея.
источник

r

rvv880 in NodeUA - JavaScript and Node.js in Ukraine
Если использую композицию, то мне нужно зависимости контроллера импортировать в файл и делать там инстансы его зависимостей - пустые параметры конструктора, new ... в его теле, если пойти дальше то композиция, уже создание его абстракций уже на уровне выше, опять нужно для каждого контрола делать тоже самое, через di-контейнер, можно в одном файле создать контейнер с указанием всех зависимостей, в этих целях
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
Чё? можно так например например:
(new App(new HelloAction(new UserNameService(new DbConnection())))).run()
источник

r

rvv880 in NodeUA - JavaScript and Node.js in Ukraine
Ну и это простыня new, если будет много сервисов, которые использую теже сервисы - опять делать new его, почему нельзя делать просто inject его зависимостей,
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
Зато ты всё контролируешь, нет никакой магии.
источник

r

rvv880 in NodeUA - JavaScript and Node.js in Ukraine
Магии нет, ты не контролируешь, все зависимости расмазаны по всему проекту
источник

r

rvv880 in NodeUA - JavaScript and Node.js in Ukraine
Тот же нест под собой содержит контейнер, и все рады несту
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
И что? Это же не значит, что есть только 1 путь и он правильный.
источник

r

rvv880 in NodeUA - JavaScript and Node.js in Ukraine
Да, это один из вариантов реализации принципа инверсии управления через контейнер, через фабрику сделай еще
источник

VS

Vlad Sobenko in NodeUA - JavaScript and Node.js in Ukraine
Посмотри в стронону фп, там всё явно передается.
Это можно принести и в ооп.
источник

r

rvv880 in NodeUA - JavaScript and Node.js in Ukraine
Что значит в фп явно передаётся, здесь тоже явно все, если взять библиотеки di-контейнера, ты же конфигурируешь контейнер
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
это означает что в фп мы строим композицию функций, а не "вот у нас сущность (класс). у нее такие требования"
источник

IK

Illya Klymov in NodeUA - JavaScript and Node.js in Ukraine
мы сцепляем сущности без всякого контейнера
источник