Proposta
Para este desafio, vamos nos aprofundar nos conhecimentos adquiridos em aula para construir uma API responsável pelo cadastro e leitura de produtos de um marketplace. Como aprendemos a construir APIs robustas, vamos considerar o cenário a seguir.
Somos uma empresa especializada na construção de APIs de alta performance e fomos contratados por esse marketplace. Nosso objetivo inicial é criar uma API de CRUD básica para suprir uma necessidade do time de produtos desse marketplace.
Dado o cenário descrito, devemos garantir que nossa API tenha:
- Uma autorização do tipo Bearer Token (JWT).
- Um endpoint para inserir um novo produto.
- Um endpoint para retornar todos os produtos cadastrados.
- Um endpoint para deletarmos um determinado produto.
- Um Swagger bem documentado.
- Uma arquitetura bem definida com services, repository e interfaces.
Orientações:
- Crie um projeto no template padrão de APIs.
- Crie as pastas necessárias para organizar seu projeto.
- Foque em resolver o problema proposto e depois pense em maneiras de evoluir sua aplicação.
Lembre-se de evoluir ainda mais sua aplicação utilizando os conceitos aprendidos em aula, como middlewares, injeção de dependência, bancos de dados e cache.
Como você pode entregar o desafio?
- Disponibilize seu código no Github.
- Compartilhe o link com o(a) docente e/ou colegas da turma para discutirmos a solução.