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

Как в ангуляре реализовать dependency inversion? Вот так думал я

делать, и наверное лучшее, что смог нагуглить, но всеравно выглядит не очень. https://netbasal.com/demystifying-the-dependency-inversion-principle-in-angular-a2daca9b05ee. Еще очень смучает тот факт, что например в монорепозитории в 2 либах хоть зависимости и будут идти в одну сторону, обе либы должны импортить классы друг из друга (Первая абстрактный, чтоб его реализовать, а вторая все что ей нужны из либы). Наверное для билда это не очень идея.

7 ответов

21 просмотр

Если либы импортируют друг друга, значит пора заводить третью либу

Назар-Калитюк Автор вопроса
Назар Калитюк
третью либу для интерфейса? Щас нарисую

Если интерфейсы, то забейте, они в жс не компилируются и зависимостей не вызывают

Назар-Калитюк Автор вопроса
Raman Yazvinski
Если интерфейсы, то забейте, они в жс не компилиру...

интерфейс нельзя использовать как токен в DI, вот в чем проблема

Назар Калитюк
интерфейс нельзя использовать как токен в DI, вот ...

А зачем нужен D inversion в angular? Ангуляровская DI решает 99% проблем которые решает Dependency Inversion. Так как сервисы в конструкторах это по сути просто типы, по которым строятся токены, которые можно заменить потом. Спрашиваю, так как пытаюсь понять для каких проблем есть смысл это применять. Я нахожу только в одном случае применение классической di

Назар-Калитюк Автор вопроса
Nick
А зачем нужен D inversion в angular? Ангуляровск...

ну как. Есть модуль которому нужно заинжектить что то интерфейса А. Этот модуль должен описать что ему нужно, а не другой модуль, который описывает конкретный сервис. Конечно можно в DI ангуляра что егодно подсунуть. но это не совсем будет правильно по типам, и по архитектуре

Назар Калитюк
ну как. Есть модуль которому нужно заинжектить что...

Мне кажется, вам нужно сначала проработать проблемы которые хотел решить Роберт Мартин с помощью DI У нас практически не бывает таких кейсов, когда слабая зависимость по типам может помочь. Для тестирования, так как язык не строго типизирован и реализация в angular позволяет подкинуть любой тип - можно просто мок создавать от класса- partial/implements и тд.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта