Documentação do produto Task Remember desenvolvido para o trabalho da CI&T.
O projeto tem como objetivo montar um produto de Todo list e para isso dividimos o ambiente em dois repositórios, um para o back-end e outro para o front-end. A aplicação terá opções de criação, edição e exclusão de tarefas.
💻 Requisitos:
- IDE(Integrated Development Environment): Spring Tools, ou IntelliJ IDEA;
- Banco de Dados: MySQL;
- JDK(Java Development Kit);
- Git.
- Conta no github
Com todos os requisitos preenchidos, vamos para a criação do ambiente local, onde ficarão os arquivos do projeto.
- Clique no botão fork, localizado no canto superior direito. Fork nada mais é do que uma cópia atual do repositório;
- Depois de realizar o fork, uma cópia do projeto ficará disponível em seus repositorios. Copie a URL do repositório e guarde-a pois precisaremos dela mais tarde;
- Inicie o terminal do gitbash ou um terminal de sua preferência;
- Navegue até a pasta que você deseja que os arquivos do projeto sejam armazenados.
- Comandos:
- Crie um novo repositório git, com o seguinte comando:
git init
Usaremos esse repositório para receber um repositório remoto existente.
- Defina e relacione um repositório remoto, digitando o seguinte comando:
git remote add origin https://github.com/QualitySquad/todo-list-back.git
E para finalizar baixe o conteúdo disponível na url que você informou no passo anterior, com o comando:
git pull origin master
Pronto! A partir deste momento todos os arquivos estarão na pasta que você definiu anteriormente.
-
URL
/task
-
Método
GET
-
Retorno
Status Code: 200
[ { "id": 1, "task": "Aprender Java", "finalizado": true }, { "id": 2, "task": "Apresentar trabalho", "finalizado": false } ]
-
URL
/task/{id}
-
Método
GET
- Parâmetros via URL
Atributo Tipo do dado Descrição Obrigatório Valor padrão Exemplo id inteiro código da tarefa sim - 1 -
Retorno
Status Code: 200
{ "id": 1, "task": "Aprender Java", "finalizado": true }
-
URL
/task
-
Método
POST
-
Parâmetros via body
Atributo Tipo do dado Descrição Obrigatório Valor padrão Exemplo task Texto Descrição da tarefa a ser feita sim - "Entrar pra CI&T"
-
Exemplo de envio
[ "task": "Entrar pra CI&T" ]
-
Retorno
Status Code: 201
{ "id": 3, "task": "Entrar pra CI&T", "finalizado": false }
-
URL
/task/{id}
-
Método
PUT
- Parâmetros via URL
Atributo Tipo do dado Descrição Obrigatório Valor padrão Exemplo id inteiro código da tarefa sim - 3 - Parâmetros via body
Atributo Tipo do dado Descrição Obrigatório Valor padrão Exemplo task Texto Descrição da tarefa a ser feita sim - "Entrar pra CI&T" finalizado verdadeiro/falso Controle de finalização da tarefa sim - true -
Exemplo de envio
[ "task": "Entrar pra CI&T", "finalizado": true ]
-
Retorno
Status Code: 204
[ "id": 3, "task": "Entrar pra CI&T", "finalizado": true ]
-
URL
/task/{id}
-
Método
DELETE
-
Parâmetros via URL
Atributo Tipo do dado Descrição Obrigatório Valor padrão Exemplo id inteiro código da tarefa sim - 1
- Retorno Status Code: 204
Para atender aos requisitos disponibilizados na documentação, realizamos a combinação de ferramentas e tecnologias que em seu resultado final concederam economia de tempo no desenvolvimento e confiabilidade na entrega final.
Spring Boot é um framework Java open source que tem como objetivo facilitar esse processo em aplicações Java. Consequentemente, ele traz mais agilidade para o processo de desenvolvimento, uma vez que devs conseguem reduzir o tempo gasto com as configurações iniciais. O framework foi escolhido para o projeto pois o nivel de segurança é muito bom, além de ser um framework que tem um custo beneficio bem alto, então muitas empresas utilizam da tecnologia para construção de suas APIs, além de atender a proposta do trabalho de contruir uma API.
MySQL é um Banco de Dados relacional (RDBMS – Relational Database Management Systems) com um modelo de cliente-servidor. RDBMS é um software de código aberto ou serviço usado na criação e gerenciamento de bancos de dados baseados no modelo relacional. A escolha por esse banco foi feita pois o mesmo é gratuito, funciona muito bem com o Spring boot e por ser uma solução de banco de dados relacional, que é a realidade da maioria das empresas hoje em dia.
Matheus Augusto Backend Developer🚀 |
Israel Gomes Frontend Developer🚀 |