Pull to refresh

Comments 15

Для решения проблемы с импортами между модулями/либами используется абстрактный класс в качестве токена

как использование этого фреймворка в реальности влияет на разработку

влияет в худшую сторону, если не до конца разобраться как он работает. А так фреймворк топ для бекенда ноды сейчас.

Да, действительно, был некоторый болезненный период адаптации, чтоб не превращать nest в очередной проект на голом express

Конечно, в крайнем случае можно динамически сконструировать класс и повесить на него нужные декораторы с помощью фабрик. Но в рамках концепции Nest это будет максимально спорное решение.

Именно это решение показывал автор фреймворка на конференции HolyJS. По его мнению это решение нисколько не спорное, а весьма органичное в рамках концепции Nest. Я, кстати, тоже использовал его – работает отлично.

После 5 лет использования голого експресса с самописными обертками в стартапе после +100500 девелоперов которые приходили и уходили (вы даже представить себе не можете как сервисы выглядят изнустри), уже 2 года с NestJS, и результаты только положительные.

Правда мы и NestJS оборачиваем в собственный фреймворк, который позволяет генерировать рабочие темплейты со структурой onion/clean architecture + готовыми инжекторами ко всем тулзам/базам мы используем, тем самым более менее ограничивая и направляя девелоперов писать в определенном стиле, который можно легко тестировать, понимать и рефакторить, сосредоточившись на написании бизнес логики.

NestJS это Java Spring/ASP.NET MVC на минималках, поэтому многим девелоперам сравнительно легко в него зайти.

З.Ы.

Ошибки депенденси действительно все еще вызывают дискомфорт, но после полного понимания как оно работает становится легче.

А как дела обстоят с поддержкой от разработчиков NestJS? Приходилось ли когда-нибудь обращаться, были ли issue на github? Как там жалуют пользователей из России?

Увы или к счастью, таких подробностей не знаю. Просто ещё не возникало пока такой необходимости, обычно, все issue были созданы уже до нас. А все специфические потребности слишком явно шли мимо основного направления развития nest-а, чтоб просить что-то этакое запилить.

Пользуюсь им. Реально крутая штука. Для тех кто знает, что такое Laravel, даже переучиваться не нужно.

Когда-нибудь это включат в документацию

export interface IService { }
export const IService = Symbol.for('IService')

Sign up to leave a comment.