Este é o desafio para quem deseja uma revisão/mentoria.
Como isso vai funcionar:
- Isto não é um processo seletivo.
- Farei um code review.
- Darei feedback com sugestão de estudos e pontos de atenção.
- Marcaremos uma chamada 1:1 para tirar dúvidas e entender o raciocínio que levou à implementação.
O desafio deve ser escrito em umas das opções
- Java 8+ com Spring Framework.
- C# com framework de sua preferência.
Precisamos de uma API que sirva o back-end de uma aplicação de aluguel de carros. Essa API precisa ser capaz de:
- Cadastrar um carro/cliente
- Editar um carro/cliente
- Deletar um carro/cliente
- Listar os carros/clientes
- Obter informações de um carro/cliente por ID
A entidade carro
deve ter os seguintes campos:
- id -> Identificador do carro.
- marca -> Marca do carro.
- modelo -> Modelo do carro.
- dataCadastro -> Data em que o carro foi cadastrado.
A entidade cliente
deve ter os seguintes campos:
- id -> Identificador do cliente.
- nome -> Nome do cliente (máx. de 50 caracteres)
- cpf -> CPF do cliente (deve ser único e não guardar pontos e traços).
- carro -> Carro alugado pelo cliente.
- dataNascimento -> Data de nascimento do cliente (formatada no padrão br: dd/MM/aaaa).
- created_at -> Data de criação do cliente.
- updated_at -> Data em que houve alteração no cliente.
Você pode utilizar qualquer banco, desde que ele seja SQL.
- Utilizar a nova API de Data do Java
- Todas as respostas precisam ser retornadas no formato JSON.
- Crie um
README.md
com as informações de como usar sua aplicação. (Como executar, quais são as rotas etc)
- Banco em memória (H2).
- Clean code.
- Princípios SOLID.
- Faça um fork desse repositório.
- Resolva o desafio da melhor maneira que você puder.
- Envie um pull-request para análise do resultado.