NestJS — это расширяемая, универсальная, прогрессивная платформа Node.js с открытым исходным кодом для создания привлекательных и ресурсоемких серверных систем. В настоящее время это самый быстрорастущий фреймворк Node.js в TypeScript.

NestJS используется для написания масштабируемых, тестируемых и слабосвязанных приложений. Он выводит масштабируемые серверы Node.js на совершенно новый уровень. Он поддерживает такие базы данных, как PostgreSQL, MongoDB, MySQL. NestJS находится под сильным влиянием Angular, React и Vue и предлагает внедрение зависимостей прямо из коробки.

По состоянию на январь 2020 года у него более 23 000 звезд на GitHub, а еженедельная скорость скачивания npm составляет почти 180 000 000 000 000 000 000 000 000 000 0 0 0 0 0 0 0 0 0 0. Он побуждает разработчиков пробовать, изучать и использовать некоторые известные парадигмы разработки программного обеспечения, а его документация содержит множество примеров, рецептов и источников кода.

NestJS легко расширяется, так как его можно использовать с другими библиотеками; универсален благодаря своей адаптивной полноценной экосистеме и прогрессивен, предоставляя функции JavaScript и шаблоны проектирования.

Строительные блоки NestJS

Модули: используются для организации кода и разделения функций на логические единицы многократного использования. Сгруппированные файлы TypeScript украшены декоратором «@Module», который предоставляет метаданные, которые Nest использует для организации структуры приложения.

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

Контроллеры: отвечают за обработку входящих запросов и отправку соответствующих ответов на клиентскую часть приложения (например, вызов API).

Невероятные возможности NestJS

В последнее время фреймворк NestJS набирает огромную популярность благодаря своим невероятным возможностям. Некоторые из них:

  • Он использует TypeScript — строго типизированный язык, который является надмножеством JavaScript.
  • Легко использовать, учиться и осваивать
  • Мощный интерфейс командной строки (CLI) для повышения производительности и простоты разработки
  • Подробная и хорошо поддерживаемая документация
  • Активная разработка и поддержка кодовой базы
  • Это с открытым исходным кодом (лицензия MIT)
  • Поддержка десятков специализированных модулей, которые помогают легко интегрироваться с распространенными технологиями и концепциями, такими как TypeORM, Mongoose, GraphQL, Logging, Validation, Caching, WebSockets и многими другими.
  • Простое модульное тестирование приложений
  • Создано для монолитов и микросервисов (целый раздел в документации, посвященный типам микросервисов приложений NestJS, а также методам и рецептам

Кто использует NestJS?

Преимущества использования NestJS широко признаны некоторыми крупнейшими компаниями, которые стремятся сделать больше за меньшее время. Самые популярные из них:

Рош

Эта многонациональная медицинская компания, которая работает в двух подразделениях: фармацевтике и диагностике, и контролирует американскую биотехнологическую компанию Genetech, использует NestJS на своем основном веб-сайте.

Адидас

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

Капджемини

Эта французская многонациональная корпорация, предоставляющая консалтинговые, технологические, профессиональные и аутсорсинговые услуги, также использует NestJS для архитектуры своих приложений.

Декатлон

Ритейлер спортивных товаров с более чем 1500 магазинами в 57 странах выбрал NestJS в качестве серверной части для своего веб-приложения.

При обсуждении компаний, использующих NestJS, также стоит упомянуть примеры проектов с открытым исходным кодом, таких как: