Habilidades

Neste projeto, aprendemos:

  • Realizar operações assíncronas utilizando callbacks;
  • Realizar operações assíncronas utilizando Promises;
  • Ler e escrever arquivos localmente com NodeJS;
  • Escrever seus próprios scripts que criam e consomem Promises;
  • Reescrever código que usa callbacks para que use Promises;
  • Realizar chamadas de funções de forma consciente;
  • Entender os conceitos básicos de como o JavaScript funciona;
  • Detectar e solucionar problemas no código de forma mais objetiva;
  • Entender a diferença entre execução síncrona e assíncrona;
  • Entender o que é o HTTP, o que é uma API e o que os dois têm a ver com o Express;
  • Escrever APIs utilizando Node e Express;
  • Entender a estrutura de uma aplicação Express e como organizar seu código;
  • Criar rotas e aplicar middlewares.

Linter

Este projeto já vem com as dependências relacionadas ao linter configuradas nos arquivos package.json.

Para poder rodar o ESLint em um projeto basta executar o comando npm install dentro do projeto e depois npm run lint. Se a análise do ESLint encontrar problemas no seu código, tais problemas serão mostrados no seu terminal. Se não houver problema no seu código, nada será impresso no seu terminal.

Você pode também instalar o plugin do ESLint no VSCode, bastar ir em extensions e baixar o plugin ESLint.

Live reload

Este projeto já vem com as dependências relacionadas ao nodemon configuradas no arquivo package.json.

Para iniciar o servidor em modo de desenvolvimento basta executar o comando npm run dev. Este comando fará com que o servidor reinicie de forma automática ao salvar uma modificação realizada nos arquivos do projeto.


Testes

Executando todos os testes

Para poder executar os testes, inicie sua aplicação com npm run dev, em seguida, basta executar o comando npm test e todos os seus testes serão executados.

Executando um teste específico

Para executar um teste expecífico, inicie sua aplicação com npm run dev, em seguida, basta executar o comando npm test nome-do-teste.

Ex: Para executar o teste referente ao login, basta digitar npm test login.