Введение, что такое NestJS?

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

Платформа позволяет разработчикам легко и быстро создавать микросервисы или монолитные приложения «все в одном». NestJS — это удивительный фреймворк, который легко освоить и использовать.

NestJS — основа для высокопроизводительных приложений

NestJS идеально подходит для создания крупномасштабных приложений. Его модульная конструкция позволяет легко разбить ваше приложение на более мелкие и более управляемые части. А поскольку NestJS основан на Express и Node.js, вы можете быть уверены, что ваши приложения будут работать быстро и надежно. Если вы не хотите использовать Express под капотом, вы можете заменить его, например, fastify.

3 ключевые особенности NestJS, которые делают его идеальным для создания реального производственного приложения

1. Поддержка TypeScript
Это означает, что вы можете создать свое приложение на TypeScript и использовать преимущества строгой типизации, аннотаций и многого другого.
Если вы еще не использовали TypeScript, это значительно улучшит вашу кодовую базу.

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

nest generate service database или nest g s database сгенерируют вам database.service.ts в мгновение ока.

3. Библиотеки NodeJS
Поскольку NestJS построен с использованием NodeJS, мы можем использовать весь каталог библиотек NodeJS. Это дает NestJS большое преимущество.

NestJS упрощает разработку Node.js и делает ее более приятной для разработчиков

Чтобы показать вам, мы создадим простое приложение RESTful.

Во-первых, нам нужно начать с установки NestJS и создания нашего проекта.

$ npm i -g @nestjs/cli
$ nest new project-name

Наиболее релевантные файлы, которые вы видите здесь: main.ts,app.controller.ts, app.module.ts,app.service.ts.

main.ts — это точка входа вашего приложения NestJS, отвечающая за его запуск.

app.module.ts — это корневой модуль по умолчанию для вашего приложения NestJS. Он используется для регистрации всех корневых контроллеров, провайдеров, а также дополнительных модулей, которые также могут иметь свои собственные контроллеры и провайдеры.

app.service.ts – это созданная по умолчанию служба, которая не является необходимой в ее стандартной форме. Предполагается, что службы используются для доступа к данным и для выполнения задач, соответствующих определенной теме (например, AuthService, UserService).

app.controller.ts содержит маршруты вашего приложения.
Контроллер по умолчанию использует app.service.ts,который автоматически внедряет Angular-подобный, чтобы получить значение, которое HTTP-сервер должен возвращать, если он получает запрос GET на '/'.< br /> Если вы запросите http://localhost:3000/, вы должны увидеть сообщение по умолчанию Hello World! (Сообщение указано в app.service.ts).

Теперь давайте добавим второй маршрут!

Этот маршрут должен вызывать метод sendMessage(message) службы appService, а затем отвечать нашим указанным объектом.

Чтобы проверить это, нам нужно добавить метод sendMessage(message) в наш AppService.

Теперь мы можем развернуть приложение NestJS с помощью команд

$ yarn start:dev
$ npm run start:dev

Пришло время протестировать нашу конечную точку RESTful, для этого я буду использовать Insomnia, потому что она мне нравится гораздо больше, чем Postman ¯\_(ツ)_/¯

И вуаля! Это работает просто отлично.

Заключение и ресурсы

Как видите, создать наш собственный первый RESTful-сервис было очень просто. NestJS предоставляет модули для подключения к базам данных, брокерам сообщений и т. д. Вы даже можете использовать встроенный модуль SMTP для отправки электронных писем. Если вам нужно больше контента, может быть, несколько подробных руководств, просто дайте мне знать.

Если вы хотите узнать что-то еще, вот вам: