Curso on-line de Node.js. Desenvolvimento profissional de API REST - curso RUB 32.900. da HTML Academy, treinamento de 2 meses, data 15 de outubro de 2023.
Miscelânea / / November 28, 2023
Neste curso você aprenderá a fazer projetos reais, com o mesmo nível de complexidade da indústria. E você fará isso corretamente, para que após o treinamento você produza resultados de alto nível pelos quais as empresas estão dispostas a pagar.
O curso é voltado para quem deseja mudar de profissão e se tornar um profissional bem remunerado. É adequado para trabalhadores que têm pouco tempo.
Seção 1 Introdução ao Node.js. CLI
Consideremos o esquema de trabalho do curso. Vamos conhecer a plataforma Node.js e descobrir quais tarefas ela é mais adequada para resolver. Vamos discutir como o código do servidor em JavaScript difere do código normal. Vamos preparar a base para o projeto e escrever a primeira aplicação com interface de linha de comando (CLI).
Assuntos organizacionais.
Revisão de projetos pessoais.
Esquema de trabalho do curso.
Repositório de projetos de demonstração.
Colapso expandido
Prática
TypeScript e Node.js.
Aulas em TypeScript.
Preparando o ambiente.
Desenvolvimento CLI.
Formato de dados TSV.
Seção 2 Ciclo de eventos. Fluxos
Vamos aprender como funciona o loop de eventos em Node.js. Vamos nos familiarizar com micro e macrotarefas. Vamos descobrir o que determina a ordem de execução do código assíncrono. Então, vamos começar a trabalhar com o sistema de arquivos. Aprenderemos como ler e criar arquivos, quais restrições existem e nos familiarizar com streams. Na prática, descobriremos como gerar grandes arquivos de dados e interagir com servidores remotos a partir do Node.js.
Como funciona o EventLoop.
Padrão Editor-Assinante (EventEmitter).
Abstração de buffer.
Fluxos.
Colapso expandido
Prática
Exporte dados para TSV.
Lendo arquivos grandes.
Solicitações HTTP do Node.js.
Seção 3 Arquitetura de Aplicativo
Vamos começar a projetar a arquitetura do aplicativo principal. Vamos discutir diferentes abordagens para a arquitetura de edifícios. Vamos aprender como dividir um aplicativo em camadas separadas. Projetaremos os primeiros serviços de aplicação: gerenciamento de configuração, registro. Vamos nos familiarizar com a inversão de controle (IoC) e montar um contêiner de dependência. Vamos aprender como usar a biblioteca Inversify e injetar dependências.
Variáveis ambientais.
Exploração madeireira.
Colapso expandido
Prática
Arquitetura de aplicativos.
Serviço de gerenciamento de configuração.
Serviço de registro (pino).
COI
Injeção de dependência.
Seção 4 Introdução aos bancos de dados. MongoDB
Vamos nos familiarizar com os bancos de dados e descobrir o que são bancos de dados e como eles diferem. Vamos descobrir como armazenar dados no servidor. Na prática, conheceremos o MongoDB, aprenderemos como executá-lo usando Docker e praticaremos a recuperação e gravação de dados. Vamos aprender como trabalhar com MongoDB a partir de Node.js: conexão, coleções, modelos (Mongoose, Typegoose).
Introdução aos bancos de dados.
Apresentando o Docker.
Mangusto.
Colapso expandido
Prática
Instalando o MongoDB.
Cliente para MongoDB.
Mangusto.
Tipoganso.
Seção 5 Bancos de dados na prática. Projeto REST
Vamos praticar o trabalho com MongoDB a partir de Node.js: descreveremos todos os modelos, conheceremos validadores e desenvolveremos serviços de acesso a dados. Na prática, vamos conhecer o padrão DTO (Data Transfer Object). Vamos conectar serviços para trabalhar com o banco de dados à CLI. Em seguida, passaremos para o design da API REST e projetaremos a primeira versão da API REST. Vamos nos familiarizar com o formato OpenAPI e descrever a primeira versão da especificação.
Compartilhamento de responsabilidades.
Objeto de transferência de dados.
Projeto de API REST.
Formato OpenAPI, Swagger.
Colapso expandido
Prática
Serviços de acesso a dados.
Data de validade.
Importando dados para o banco de dados (CLI).
Especificação OpenAPI.
Seção 6 Express.js
Vamos começar a implementar a API REST. Vamos nos familiarizar com a estrutura Express.js e discutir seus pontos fortes e fracos. Vamos nos familiarizar com o roteamento. Vamos projetar uma camada de abstração: controladores. Vamos aprender como gerar e processar solicitações à API. Vamos nos familiarizar com a ferramenta adicional nodemon. Vamos aprender como lidar com erros.
Processamento de solicitações de clientes.
Expresso.js.
E novamente MVC.
Colapso expandido
Prática
Roteamento.
Reiniciando o aplicativo.
Erro no processamento.
Controladores.
Seção 7 Middleware. Validação. Fazendo upload de arquivos
Vamos continuar nos familiarizando com o Express.js e entendendo o conceito de middleware. Vamos descobrir o que é e quais tarefas são convenientes para resolver usando middleware. Em seguida, projetaremos uma abstração adicional e escreveremos alguns de nossos próprios middlewares.
Depois disso, passaremos suavemente para a questão da validação de dados - descobriremos por que é importante verificar os dados dos clientes e organizaremos a verificação dos dados de entrada no projeto. Na prática, conheceremos as ferramentas de validação joi e class-validator.
Depois disso, vamos prosseguir com o download dos arquivos. Os clientes podem transferir não apenas dados de texto, mas também arquivos inteiros. Vamos aprender como recebê-los no servidor, salvá-los e devolvê-los aos clientes. Na prática, implementamos o carregamento de avatares de usuários.
Middleware.
Por que e como validar dados.
Carregando arquivos.
Colapso expandido
Prática
Middleware para validação de dados.
validador de classe para validação.
Fazendo upload de arquivos usando multer.
Middleware estático.
Seção 8 Restrição de Acesso. Autorização
Nem todos os recursos devem estar disponíveis para clientes anônimos, então vamos descobrir como restringir o acesso a determinados recursos. Vamos aprender como restringir o acesso a determinadas rotas no Express.js. Vamos descobrir como a autorização difere da autenticação. Vamos conhecer JWT (JSON Web Tokens) e aprender como usá-los na prática. Vamos praticar a criação de rotas privadas e implementar o cenário “Fazer login em uma parte privada da aplicação”.
Autorização e autenticação.
Sessões.
Tokens da Web JSON.
Colapso expandido
Prática
Rotas privadas.
JWT.
Jose.
Seção 9 Back-end e front-end
Vamos descobrir como fazer amigos no backend e no frontend. Vamos aprender como reutilizar o DTO no frontend. Vamos lembrar sobre o padrão “Adaptador”. Vamos conhecer o CORS e descobrir quais problemas ele resolve. Vamos refatorar o tratamento de erros: vamos ver como formatar erros para pessoas e máquinas.
DTO e front-end.
CORS.
Colapso expandido
Prática
CORS.
Refatoração: separando erros.
Seção 10 Final
Vamos resumir o curso. Vamos discutir o plano adicional para aprender Node.js.
FoxSPb2012
31.05.2022 G.
Curso legal sobre Node.js
Vantagens: apresentação do material, trabalho com mentor, Desvantagens: seguir o programa do curso, sem oportunidade de alterar um projeto pessoal. Gostei muito do curso, ajudou a ampliar meu entendimento sobre os aplicativos como tais (afinal, somos todos usuários de determinados aplicativos), deixe-me trabalhar no repositório de demonstração com abordagens/tecnologias de desenvolvimento, ver tudo no projeto de treinamento e perceba...
FoxSPb2012
31.05.2022 G.
Curso legal sobre Node.js
Vantagens: apresentação do material, trabalho com mentor, Desvantagens: seguir o programa do curso, sem oportunidade de alterar um projeto pessoal. Gostei muito do curso, ajudou a ampliar meu entendimento sobre os aplicativos como tais (afinal, somos todos usuários de determinados aplicativos), deixe-me trabalhar no repositório de demonstração com abordagens/tecnologias de desenvolvimento, ver tudo no projeto de treinamento e perceba...