Get Mystery Box with random crypto!

Топ 10 ошибок в Nest.js проектах. #nestjs У Nest.js отличная | 🇺🇦 Math.random(): javascript community

Топ 10 ошибок в Nest.js проектах.
#nestjs

У Nest.js отличная документация, понятная архитектура кода и декларативных подход. Это позволяет начинать писать реальный код разработчикам переходящих в #nodejs с других языков. Вот типичный список ошибок на уровне кода:

1. Забыть добавить enableShutdownHooks, поэтому приложение не может корректно завершать свою работу.
2. Использование Hybrid application (http + ms) вместо разделения по процессам. В результате возникают проблемы в фильтрах ошибок.
3. Выкидывание наследников HttpException в MS. Аналогично в другую сторону. А добавьте сюда еще GraphQL/WS/custom контексты. В результате трансформация ошибок происходит не правильно.
4. Смешание входящих и исходящих DTO и/или моделей data-layer. В результате код получается короче, но сильнее связанный.
5. Наличие только одного уровня тестов из unit/e2e пары. В результате тестировать сложнее.
6. Не понимание работы export/import Nest.js модулей и провайдеров. В результате происходят ошибки в DI.
7. Не использование custom decorator-в и pipe. В результате код теряет свою декларативность.
8. Расширение сторонних интерфейсов (например Request) в ts, а не d.ts файле. В результате какой-то из процессов не делает его import.
9. Цикличные связи без forwardRef. В результате код просто не стартует.
10. Отсутствие логирования (в том числе запросов в БД). В результате troubleshoting очень затруднен.

В завершение скажу, что ошибки на уровне проектирования и архитектуры приложения проектозависимы.