O Guia para Iniciantes: NestJS e Como ele é o melhor framework JS do mercado
O que é NestJS?
NestJS é uma framework JavaScript para criar aplicativos do lado do servidor eficientes e escaláveis. Ele oferece um grande conjunto de recursos que podem ajudar os desenvolvedores a criar um código robusto e de fácil manutenção.
A estrutura permite que os desenvolvedores criem facilmente microsserviços ou aplicativos monolíticos tudo-em-um a qualquer momento. NestJS é um framework incrível que é fácil de aprender e usar.
NestJS — A base para aplicativos de alto desempenho
O NestJS é perfeito para criar aplicativos de larga escala. Seu design modular facilita a divisão de seu aplicativo em partes menores e mais gerenciáveis. E como o NestJS é baseado em Express e Node.js, você pode ter certeza de que seus aplicativos serão rápidos e confiáveis. Se você não quiser usar o Express sob o capô, poderá trocá-lo, por exemplo, fastify.
3 principais recursos do NestJS que o tornam ideal para criar um aplicativo de produção no mundo real
1. Suporte a TypeScript
Isso significa que você pode criar seu aplicativo no TypeScript e usar os benefícios do “Strict typing”, “annotations” e muito mais.
Se você ainda não usou o TypeScript, isso melhorará drasticamente sua base de código e ajudará a equipe evitar erros na codificação.
2. Economia de tempo com a CLI da Nest
NestJS é fornecido com uma poderosa interface de linha de comando que permite gerar código e arquivos para você. usando apenas comandos curtos.
nest generate service database
ou nest g s database
geraria seu database.service.ts em um piscar de olhos.
3. Bibliotecas NodeJS
Como o NestJS é construído usando NodeJS, podemos usar todo o catálogo de bibliotecas NodeJS. Isso dá grande ascendência ao NestJS.
NestJS torna o desenvolvimento do Node.js mais fácil e agradável para desenvolvedores
Para mostrar a você, vamos construir um aplicativo RESTful simples.
Primeiro, precisamos começar instalando o NestJS e criando nosso projeto.
$ npm i -g @nestjs/cli
$ nest new project-name
Os arquivos mais relevantes que você pode ver aqui são main.ts
, app.controller.ts
, app.module.ts
, app.service.ts
.
O main.ts é o ponto de entrada do seu aplicativo NestJS e é responsável por ativar seu aplicativo.
O app.module.ts é o módulo raiz padrão do seu aplicativo NestJS. Ele é usado para registrar todos os controladores raiz, provedores e módulos adicionais, que também podem ter seus próprios controladores e provedores.
O app.service.ts é um serviço padrão gerado. Os serviços devem ser usados para acessar dados e para executar tarefas correspondentes a um tópico específico (por exemplo, AuthService, UserService).
O app.controller.ts contém as rotas do seu aplicativo.
O controlador padrão usa o app.service.ts
, que é injetado automaticamente do tipo Angular, para obter o valor que o servidor HTTP deve retornar se receber uma solicitação GET em ‘/’.
Se você solicitar http://localhost:3000/ você deverá ver a mensagem padrão ‘’Hello World!” (A mensagem é especificada em app.service.ts).
Agora vamos adicionar uma segunda rota!
Essa rota deve chamar o método sendMessage(message)
do appService e depois responder com nosso objeto especificado.
Para testar isso, precisamos adicionar um método sendMessage(message)
ao nosso AppService.
Agora podemos ativar o aplicativo NestJS usando os comandos
$ yarn start:dev
ou
``$ npm execute start:dev
É hora de testar nosso endpoint RESTful, vou usar o Insomnia para isso porque gosto muito mais dele do que Postman ¯\_(ツ)_/¯