Size: a a a

NestJS — русскоязычное сообщество

2020 March 08

DT

Denchik Tymokhin in NestJS — русскоязычное сообщество
Или для кого ее Камил писал
источник

W

Wacker in NestJS — русскоязычное сообщество
Denchik Tymokhin
injectable tree
How to use injectable
я могу что то найти на англ и дополнить свои знания. А вот вникнуть в то что я вобще не понимаю, из англ. статьи мне сложно
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
минут через 20 распишу )
источник

W

Wacker in NestJS — русскоязычное сообщество
Denchik Tymokhin
injectable tree
How to use injectable
чекну, спасибо
источник

DT

Denchik Tymokhin in NestJS — русскоязычное сообщество
Wacker
я могу что то найти на англ и дополнить свои знания. А вот вникнуть в то что я вобще не понимаю, из англ. статьи мне сложно
Примеры есть
источник

W

Wacker in NestJS — русскоязычное сообщество
Denchik Tymokhin
Примеры есть
если ты про примеры из доки нэста. То я все проштудировал. Но сама суть осталась для меня загадкой
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
да там изян
источник

DT

Denchik Tymokhin in NestJS — русскоязычное сообщество
Не только из доки, есть также медиум
источник

DT

Denchik Tymokhin in NestJS — русскоязычное сообщество
Ютубчик
источник

W

Wacker in NestJS — русскоязычное сообщество
Denchik Tymokhin
Ютубчик
вот на ютубе нашел уроки, времени не хватает, сесть посмотреть
источник

DT

Denchik Tymokhin in NestJS — русскоязычное сообщество
Wacker
вот на ютубе нашел уроки, времени не хватает, сесть посмотреть
Ну тут уже твой выбор
источник

W

Wacker in NestJS — русскоязычное сообщество
Denchik Tymokhin
Ну тут уже твой выбор
но, спасибо за советы!
источник

IB

Igor Bond in NestJS — русскоязычное сообщество
всем привет
у моего nodemon крыша поехала - получается запускаю npm run start:dev - все гуд - запускается
А потом когда сохраняю файл, nodemon получается перезапускает проект и пишет что такой адрес уже используется
Не в курсе как это победить в Ubuntu?
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
Wacker
просто каша. Я понимаю что это явно решает какую то важную проблему. Но получается, что я как мартышка на угад делаю.
Начать надо с понимания Dependency Inversion. Фишка в том, что раньше мы как писали — импортировали в высокоуровневые политики код низкоуровневых. Т.е. например в UserService импортировали какой-нибудь логгер. Это очень усложняет поддержку кода. Дальше придумали просто инжектировать все зависимости в конструктор, чтобы развернуть эту зависимость. Т.е. UserService уже не импортит логгер и не создаёт его экземпляр, ав порождает самостоятельно. Следующий шаг — появление IoC-контейнера, который уже сам развязывает твои зависимости. В итоге ты просто пишешь все зависимости в конструкторе, объявляешь, что у тебя injactable сущность и IoC-контейнер ищет в еёё в зарегестрированных провайдерах и инжектит в рантайме.
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
Andrey Melikhov
Начать надо с понимания Dependency Inversion. Фишка в том, что раньше мы как писали — импортировали в высокоуровневые политики код низкоуровневых. Т.е. например в UserService импортировали какой-нибудь логгер. Это очень усложняет поддержку кода. Дальше придумали просто инжектировать все зависимости в конструктор, чтобы развернуть эту зависимость. Т.е. UserService уже не импортит логгер и не создаёт его экземпляр, ав порождает самостоятельно. Следующий шаг — появление IoC-контейнера, который уже сам развязывает твои зависимости. В итоге ты просто пишешь все зависимости в конструкторе, объявляешь, что у тебя injactable сущность и IoC-контейнер ищет в еёё в зарегестрированных провайдерах и инжектит в рантайме.
Вот хороший видос https://www.youtube.com/watch?v=Yz5IwAKNRhE постепенного улучшения архитектуры от чистого express до express + TS + inversify, посмотри. Там показано что, зачем и как работает.
источник

W

Wacker in NestJS — русскоязычное сообщество
Andrey Melikhov
Начать надо с понимания Dependency Inversion. Фишка в том, что раньше мы как писали — импортировали в высокоуровневые политики код низкоуровневых. Т.е. например в UserService импортировали какой-нибудь логгер. Это очень усложняет поддержку кода. Дальше придумали просто инжектировать все зависимости в конструктор, чтобы развернуть эту зависимость. Т.е. UserService уже не импортит логгер и не создаёт его экземпляр, ав порождает самостоятельно. Следующий шаг — появление IoC-контейнера, который уже сам развязывает твои зависимости. В итоге ты просто пишешь все зависимости в конструкторе, объявляешь, что у тебя injactable сущность и IoC-контейнер ищет в еёё в зарегестрированных провайдерах и инжектит в рантайме.
тогда тупой вопрос, почему мне все равно приходиться писать import в файлах? Или это избавляет от конструкций new UserRepository и написание синглтонов?
источник

W

Wacker in NestJS — русскоязычное сообщество
чекну, спасибо!!!
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
Wacker
тогда тупой вопрос, почему мне все равно приходиться писать import в файлах? Или это избавляет от конструкций new UserRepository и написание синглтонов?
Отличный вопрос! Это проблема документации nest, фактически ты не должен в хорошем коде импортить классы из заисимостей, ты должен импортить интерфейсы которые лежат отдельно. Но в js нет интерфейсов.
источник

W

Wacker in NestJS — русскоязычное сообщество
Andrey Melikhov
Отличный вопрос! Это проблема документации nest, фактически ты не должен в хорошем коде импортить классы из заисимостей, ты должен импортить интерфейсы которые лежат отдельно. Но в js нет интерфейсов.
а TS?
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
IoC работает в рантайме, в рантайме нет интерфейсов
источник