Como você está lidando com esse processo de transição?
Aprender a aprender pode ser muito doloroso, mas eu te garanto uma coisa: é libertador! Chegamos na décima semana! E vocês estão voandooo! 🚀
- Vamos começar com um momento só nosso ❤️
- Depois vamos revisar alguns dos conceitos estudados nas últimas semanas
- De assunto novo veremos somente a implementação de 2 verbos do protocolo HTTP (PUT e PATCH)
- E de quebra teremos bastante treino!
Essa revisão vai te ajudar a relembrar conceitos e modelos para estabelecer o seu mapa mental de aprendizdo! 😃
É um interpretador Javascript que não depende do navegador.
Ele é formado pelo V8, motor interpretador de Javascript criado pelo Google, e pela libuv, uma biblioteca que deu características de linguagem back-end para o node.
Node.js revolucionou a forma de programar em Javascript, pois a linguagem evoluiu de uma forma de dar vida aos elementos no navegador para uma linguagem capaz de rodar sistemas em computadores/servidores.
É o protocolo de transferência de hipertexto.
O principal protocolo de comunicação entre computadores utilzados na internet.
Ele cria as regras para enviar e receber informações na internet.
Ele é responsável pelo o que acontece por debaixo dos panos quando usamos a internet.
Para além de GET e POST, temos também no nosso leque de principais métodos o PUT, DELETE e PATCH.
É simples de entender:
- GET: para consultas
- POST: para criação de recursos
- DELETE: para remoção de recursos
- PUT e PATCH: para atualização de recursos
Interface entre aplicativos e programação.
Se uma interface de um sistema é criado para o usuário final, a API é desenvolvida para que um sistema possa usar as funcionalidades de outro sistema.
Interface ideal para que um sistema se comunique com outro sistema.
Rest é uma abstração(forma de usar as regras) do protocolo HTTP para simplificar a construção de um web service, ou seja quem cria uma API com as restrições e regras do modelo Rest está criando na verdade API Restful.
O grande objetivo desse modelo é fazer com que os recursos estejam disponíveis através de URLs.
- Adotar convenção de URLs
- Basear em recursos
- Usar os verbos HTTP para indicar ações
- Ser stateless, ou seja, toda requisição é autossuficiente/independente
Aqui no server que você vai chamar o app para escutar a porta e disponibilizar toda a aplicação a partir do localhost
Aqui no app que você vai usar a rota raiz
Aqui nas rotas você vai usar os verbos para executar os controllers
Aqui no controller você vai acessar os dados do seu model a partir das requisições e enviar respostas
Por enquanto estamos apenas guardando nosso JSON aqui, mas no futuro será o lugar onde você irá modelar os esquemas de dados para o banco. Não fique ansiosa! Acredite no processo, ele funciona!
Aqui você não precisa fazer nada, mas é onde a dev front-end cria as telas bonitonas para usar os dados que você trata e disponibiliza.
Os verbos PUT
e PATCH
servem para atualização de um recurso.
Mas quando escolher um ou outro? Não fique confusa! O PUT
serve para atualização do recurso inteiro enquanto o PATCH
é uma atualização de um ou mais campos daquele recurso.
Verbo PUT:
- Geralmente usado com parâmetro
- Deve passar todos os dados do recurso preenchidos, independente de quais dados você de fato editou.
Por exemplo, digamos que seu model músicas possui os atributos nome e artista – e você editou apenas o nome. A documentação indica que você deve passar ambos os atributos preenchidos para o serviço (mesmo só tendo editado o nome).
Para resolver isso de forma elegante a adote por convenção, um quinto verbo HTTP: PATCH.
Verbo PATCH:
- Use para editar o recurso sem a necessidade de enviar todos as chaves e valores do seu model
- Envia de fato o que foi alterado
- Além também de dizer qual o ID como parâmetro, para que o serviço saiba o que vai ser alterado.
Exemplos:
Recurso | Descrição |
---|---|
/musicas |
A partir do parâmetro ID para escolher uma determinada música, vamos alterar o nome da música usando o PUT |
Recurso | Descrição |
---|---|
/musicas |
A partir de um parâmetro para escolher uma determinada música, usando o PATCH vamos alterar o nome da música |
Recurso | Descrição |
---|---|
/albuns |
A partir de um parâmetro para escolher um determinado album, vamos alterar o dado de name, usando o verbo PUT |
Recurso | Descrição |
---|---|
/albuns |
A partir de um parâmetro para escolher um determinado album, vamos alterar o dado de name, usando o verbo PATCH |
Desafio:
Já estamos treinando com nossos exemplos em aula, já já será a vez de você brilhar no mundo e chamar as migas tudo no grupo pra estudar juntas! haha