Skip to content

Latest commit

 

History

History
39 lines (23 loc) · 3.22 KB

File metadata and controls

39 lines (23 loc) · 3.22 KB

Desafio de Estágio em Backend com Node.js: Desenvolvimento de API RESTful de Gerenciamento de produtos

Descrição do desafio: Você foi selecionado para participar de um desafio para uma vaga de estágio em desenvolvimento backend com Node.js, e ter conhecimento em TypeScript é um diferencial. Seu objetivo é desenvolver uma API RESTful para gerenciar produtos. Sua missão é implementar as seguintes funcionalidades:

  • Criar um novo produto: Permitir que os usuários possam adicionar um novo produto fornecendo informações como nome, preço e quantidade em estoque.
  • Listar todos os produtos: Permitir que os usuários possam obter uma lista de todos os produtos existentes.
  • Obter detalhes de um produto específico: Permitir que os usuários possam obter os detalhes de um produto específico com base no seu ID.
  • Atualizar informações de um produto: Permitir que os usuários possam atualizar as informações de um produto existente, incluindo nome, preço e quantidade em estoque.
  • Excluir um produto: Permitir que os usuários possam excluir um produto existente com base no seu ID.
  • Pesquisar produtos: Permitir que os usuários possam pesquisar produtos com base em critérios como nome, preço ou categoria.

O desafio consiste em seguir as etapas abaixo:

  1. Crie uma estrutura de projeto adequada para a API, utilizando Node.js e JavaScript/TypeScript.

  2. Implemente as rotas necessárias para realizar as operações básicas de CRUD (Create, Read, Update, Delete) para os produtos descrito anteriormente. As rotas devem seguir as melhores práticas de design RESTful.

  3. Utilize um banco de dados de sua escolha (por exemplo, SQLite, MySQL, PostgreSQL) para persistir as tarefas. Certifique-se de realizar a conexão correta com o banco de dados.

  4. Utilize boas práticas de codificação, como organização do código, nomenclatura adequada de variáveis e funções, uso de padrões de projeto, etc.

Diferencial:

  1. Implemente a autenticação e autorização na API, utilizandoVocê foi contratado como estagiário em uma empresa de comércio eletrônico e sua tarefa é criar uma API RESTful para gerenciar produtos. Sua missão é implementar as seguintes funcionalidades:

  2. Escreva testes unitários para as principais funcionalidades da API, utilizando uma biblioteca de testes, como Mocha ou Jest.

  3. Implemente validações de entrada nos endpoints, garantindo que os dados enviados pelos clientes estejam corretos e completos.

  4. Documente a API, descrevendo todas as rotas disponíveis, seus parâmetros, retornos e exemplos de uso. Utilize uma ferramenta como Swagger ou apidoc para gerar a documentação automaticamente.

  5. Compartilhe seu código em um repositório Git e documente o processo de configuração e execução do projeto.

Este desafio permitirá avaliar suas habilidades em desenvolvimento backend com Node.js e TypeScript, incluindo o design e implementação de APIs RESTful, persistência de dados, autenticação e autorização, testes unitários e boas práticas de codificação.

Dica: Você pode utilizar frameworks populares como Express.js para auxiliar no desenvolvimento da API, além de bibliotecas como TypeORM ou Sequelize para a integração com o banco de dados.

Boa sorte e divirta-se com o desafio!