Criando APIs com Nest Framework
NodeJS, TypeScript, APIs Rest, Segurança, Performance, Padronização de APIs, GraphQL, Mongo, Mongoose, WebSockets, CQRS e Microsserviços juntos e de uma forma que você nunca viu antes.
-
Esta é a página do curso 7180 – Criando APIs com Nest Framework.
Este curso traz o necessário para você criar APIs avançadas utilizando TypeScript e todo o poder do NodeJS. Desta vez, utilizaremos o framework Nest, que tornará o desenvolvimento muito mais produtivo.
Depois que você aprendeu o arroz-com-feijão do Backend com JavaScript, ou seja, node.js com express usando JavaScript, agora é a hora de aprender a fazer um jantar romântico à luz de velas, com entrada, prato principal e sobremesa: TypeScript, Mongo, MySQL, WebSocket, CQRS, GraphQL. Tudo isso é a fundação para microsserviços.
Neste curso, que é uma evolução do curso Criando APIs com Node, vamos melhorar nossas técnicas e focar em entregar mais qualidade em aspectos avançados, como segurança, padrões de projetos, CQRS, tempo-real com WebSockets, e consumir dados do banco MySQL (relacional) e MongoDB (não-relacional).
Aproveitaremos cada minuto deste curso com muito conhecimento e prática técnica.
Neste curso de Node você vai...
- Configurar o ambiente de desenvolvimento para Node.js
- Aprender a inicializar um projeto node e instalar pacotes
- Aprender a utilizar a CLI do Nest
- Aprender o fluxo de desenvolver, testar, debugar, melhorar e corrigir aplicações
- Aprender a utilizar o Postman para interagir com a API
- Aprender conceitos de desenvolvimento Web como REST API, Rotas, Controllers
- Aprender boas práticas na modelagem de endpoints de API REST
- Aprender como construir um CRUD REST com Node.js
- Aprender a construir uma API com MongoDB e Mongoose (banco não-relacional)
- Aprender a implementar operações assíncronas com Async/Await
- Aprender e implementar o Repository Pattern
- Aprender a desenvolver aplicações utilizando Design By Contract
- Aprender a validar os modelos com Fluent Validator
- Implementar interceptors em Node.js
- Implementar paginação com Node.js
- Aprender o básico da configuração e uso do MySQl Server e Workbench
- Aprender a utilizar o TypeORM
- Aprender e implementar o conceito de CQRS em Node.js
- Aprender e implementar aplicações com WebSockets em Node.js
- Aprender e implementar o GraphQL em uma API Node.js
- Implementar login, autenticação, autorização, refresh token com Node.js (JWT)
- Implementar rotas protegidas de acordo com o Perfil do Usuário
- Implementar restauração e alteração de senha
- Como organizar uma API Node.js em camadas
- Utilizar variáveis de ambiente para a aplicação em Node.js
- Criptografar a senha de usuário em Node.js
- Implementar cache, log e compressão de dados em node.js
- Implementar comunicação com uma API externa via HTTP
Para quem é recomendado este curso de Node
- Estudantes com alguma experiência em JavaScript e/ou TypeScript
- Estudantes que já realizaram o curso Criando APIs com Node
- Programadores com alguma experiência em APIs com Node.js
- Programadores de outras linguagens querendo conhecer o potencial de APIs com Nest
- Programadores com expectativa de entregar APIs mais avançadas
- Programadores interessados um curso para aprender a desenvolver um MVP com node.js
- Profissionais querendo aprender e praticar CQRS e Design By Contract
- Profissionais querendo conhecer GraphQL e WebSockets
- Profissionais em preparação para uma entrevista técnica avançada com Node.js
- Profissionais experientes que querem fechar lacunas nos seus conhecimentos
Tecnologias e versões utilizadas
- Node.js v11.6.0 (versão mínima)
- Nest CLI 5.7.1
- Postman (versão mais recente disponível)
- Visual Studio Code (Versão mais recente disponível)
- MongoDb
- MySQL
Projetos do curso
API de uma PetShop, segmentada em três módulos: Agenda, Backoffice e Loja, contendo a maior parte do conteúdo programático deste curso.
Sistema de Chat básico em tempo real para utilizarmos o WebSocket, que complementariam um projeto para uma solução de Pet Shop.
Relatório de Produtos, que vai permitir a utilização do GraphQL na API, que complementariam um projeto para uma solução de Pet Shop.
-
-
Módulo 1
Introdução- Introdução - 2 mins
- Setup - 3 mins
- Instalando o CLI do Nest - 4 mins
- Overview do Projeto - 5 mins
- Módulos - 5 mins
- Controllers - 4 mins
- Rodando a Aplicação - 3 mins
- Rotas - 5 mins
- Postman - 4 mins
- Parâmetros de Rotas - 6 mins
- Tipando a Entrada de Dados - 8 mins
- Tipando o Retorno da Requisição - 6 mins
- Modelagem - 8 mins
- Testando os Models - 2 mins
- Contratos - 5 mins
- Flunt - 5 mins
- Customer Contract - 8 mins
- Interceptors - 13 mins
- Testando as Validações - 3 mins
-
Módulo 2
MongoDb- Schemas - 11 mins
- Customer Schema - 9 mins
- Data Transfer Objects - 6 mins
- Conectando ao MongoDb - 5 mins
- Criando o banco - 4 mins
- Services - 13 mins
- Async e Await - 7 mins
- Persistindo o Customer - 6 mins
- Try Catch - 4 mins
- Criando o Endereço de Cobrança - 16 mins
- Criando o Endereço de Entrega - 5 mins
- Criando um Pet - 12 mins
- Alterando um Pet - 7 mins
- Listando os Clientes - 7 mins
- Listando os Detalhes do Cliente - 4 mins
- Query e Paginação - 10 mins
- Organizando a Solução - 5 mins
- Address Service e Enums - 4 mins
- Pet Service - 2 mins
- Address Controller - 4 mins
- Pet Controller - 3 mins
- Organizando os Contratos - 1 mins
- Atualizando o Cliente - 5 mins
- Criando o Cartão de Crédito - 3 mins
- Query Contract - 4 mins
-
Módulo 3
MySQL- Introdução - 5 mins
- Instalando o TypeORM - 4 mins
- MySQL Server e Workbench - 3 mins
- Configurando o TypeORM - 5 mins
- Estrutura do Banco - 2 mins
- Entidade de Produto - 5 mins
- Product Repository - 6 mins
- Product Controller - 5 mins
- Testando o CRUD - 5 mins
- Order Entity - 3 mins
- Order Item Entity - 3 mins
- Order Service - 2 mins
- Order Item Service - 1 mins
- Order Controller - 6 mins
- Criando um Pedido - 7 mins
- Testando a inclusão do Pedido - 6 mins
-
Módulo 4
Segurança- Pacotes e Route Guard - 5 mins
- Auth Service e Payload - 10 mins
- JWT Strategy - 7 mins
- Configurando os Módulos - 4 mins
- Testando o Token - 3 mins
- Custom Auth Guard - 6 mins
- Adicionando Roles ao Paypload - 5 mins
- Capturando Informações do Token - 5 mins
- Restringindo Rotas por Perfil - 8 mins
- Adicionando Roles ao Usuário - 4 mins
- Autenticando o Usuário - 11 mins
- Restauração de Senha - 5 mins
- Alteração de Senha - 4 mins
- Refresh Token - 4 mins
-
Módulo 5
Otimização -
Módulo 6
CQRS- Introdução - 2 mins
- Aggregate e AggregateRoot - 3 mins
- Repositório de Salas - 2 mins
- Commands - 4 mins
- Handlers - 4 mins
- CommandBus - 4 mins
- Controllers - 3 mins
- Resolvendo Dependências - 2 mins
- Events - 3 mins
- Disparando Eventos - 2 mins
- Fluxo de Execução - 2 mins
- DTOs no CQRS - 3 mins
- Refatorando o Controller - 3 mins
- Refatorando o Command e Service - 2 mins
- Refatorando o Handler e o Model - 3 mins
-
Módulo 7
WebSockets -
Módulo 8
GraphQL
-
Módulo 1
Instrutor
Carreiras relacionadas
Artigos relacionados
- O futuro do ASP.NET e Blazor
- Cutomizando Claims no ASP.NET
- Autenticação e autorização com JWT e Bearer
Cursos relacionados
Matricule-se
2.926
Aulas disponíveis
275
horas de conteúdo
72.003
Alunos matriculados
49.936
Certificados emitidos
Comece de graça agora mesmo!
Temos mais de 20 cursos totalmente de graça e todos com certificado de conclusão.
Prefere algo mais Premium?
Conheça nossos planos
Premium anual
Compra única, parcelada em até
12x no cartão de crédito
84
,78
=R$ 1.017,36- 1 ano de acesso
- Acesso à todo conteúdo
- Emissão de Certificado
- Tira Dúvidas Online
- 61 cursos disponíveis
- 10 carreiras disponíveis
- 161 temas de tecnologia
- Conteúdo novo todo mês
- Encontros Premium
Começar agora
Precisa de ajuda?
Dúvidas frequentes
-
Posso começar de graça?
Sim! Basta criar sua conta gratuita no balta.io e começar seus estudos. Nós contamos com diversos cursos TOTALMENTE gratuitos e com certificado de conclusão.
-
Vou ter que pagar algo?
Nós temos cursos gratuitos e pagos, porém você não precisa informar nenhum dado de pagamento para começar seus estudos gratuitamente conosco. Os cursos gratuitos são completos e com certificado de conclusão, você não paga nada por eles.
Porém, caso queira algo mais Premium , você terá acesso à diversos benefícios que vão te ajudar ainda mais em sua carreira. -
Por onde devo começar?
Siga SEMPRE as nossas Carreiras , elas vão te orientar em todos os sentidos. Os cursos já estão organizados em categorias e carreiras para facilitar seu aprendizado.
Nossa sugestão para aprendizado é começar pelo Backend e seguindo para Frontend e Mobile.
- Backend
- Frontend
- Mobile
-
Os cursos ensinam tudo que preciso?
Nenhum curso no mundo vai te ensinar tudo, desculpa ser sincero! Os cursos são uma base, eles fornecem por volta de 30% do que você precisa aprender, o resto é com você, com dedicação e MUITA prática.
-
O que eu devo estudar?
Java ou .NET? Angular ou React? Xamarin ou Flutter? A resposta é simples e direta: "Você já sabe o básico?"
Se você ainda não sabe BEM o básico, ou seja, os fundamentos, OOP, SOLID, Clean Code, está perdendo tempo estudando Frameworks ou até coisas mais avançadas como Docker. Foque nos seus objetivos primeiro.
Agora se você está indeciso sobre qual Framework estudar, a boa notícia é que o mercado neste momento está bem aquecido e você tem várias oportunidade. Desta forma o que levaríamos em conta para tomar esta decisão seria:
- Já sei o básico
- O Framework/Tecnologia tem mercado onde eu estou (região)
- O Framework/Tecnologia é utilizado em uma empresa onde quero atual
- O Framework/Tecnologia resolve meu problema
- Eu gosto de utilizar o Framework/Tecnologia
-
Estou pronto para estudar no balta.io?
Com certeza! O primeiro passo é começar e você pode fazer isto agora mesmo!
Começar de graça
Assine nosso Newsletter
Receba em primeira mão todas as nossas novidades.