image

Bootcamps ilimitados + curso de inglês para sempre

80
%OFF
Jonathan Domingues
Jonathan Domingues17/09/2025 23:45
Compartir
Microsoft - Azure AZ-900Recomendado para tiMicrosoft - Azure AZ-900

REST vs RESTful: Qual a real diferença? Compartilhando o que aprendi!

    Nessa jornada de programação, me deparei com os termos REST e RESTful o tempo todo.

    Para ser sincero, eu achava que era "tudo a mesma coisa", mas fui dar uma pesquisada e vi que tem uma diferença sutil, mas que me ajudou a entender melhor como construir APIs.

    Queria compartilhar com vocês o que eu entendi.

    A analogia que me salvou: A Receita e o Bolo

    Pra entender, a analogia que mais fez sentido pra mim foi pensar numa receita de bolo.

    REST é a Receita: Pensem no REST (Representational State Transfer) como a receita em si. Ele não é a API, mas um conjunto de boas práticas e regras de arquitetura. É tipo um guia que diz: "Olha, pra sua API ficar bem estruturada, fácil de entender e de dar manutenção, o ideal é seguir esses caminhos aqui."

    As "regras" principais dessa receita, pelo que vi, são coisas como: ter uma arquitetura cliente-servidor, não guardar o estado do cliente no servidor (stateless), e o mais importante, ter uma interface uniforme.

    RESTful é o Bolo Pronto!

    Aí fica fácil, né? Se o REST é a receita, uma API RESTful é o nosso bolo pronto!

    É quando a gente pega aquela receita (os princípios REST) e constrói uma API que segue tudo direitinho, aproveitando o que o próprio HTTP já oferece pra gente.

    Como isso fica no código?

    É aqui que a diferença fica clara. Vamos imaginar uma API simples de "Tarefas" que a gente poderia fazer num projeto.

    O jeito que eu talvez fizesse antes de entender isso:

    Eu provavelmente criaria URLs que parecem nomes de funções, tipo:

    GET /buscartarefas
    POST /criarnovatarefa
    POST /editartarefa/1
    

    Funciona? Sim. Mas não está usando todo o potencial do HTTP.

    Agora, o jeito RESTful de fazer:

    A ideia aqui é pensar em "Tarefas" como um recurso. As ações que a gente quer fazer (buscar, criar, editar) são definidas pelos métodos HTTP (GET, POST, PUT, DELETE).

    Listar todas as tarefas:

    GET /tarefas
    

    Buscar uma tarefa específica:

    GET /tarefas/1
    

    Criar uma nova tarefa:

    POST /tarefas (e envia os dados no corpo da requisição)
    

    Atualizar uma tarefa:

    PUT /tarefas/1 (e envia os dados atualizados)
    

    Excluir uma tarefa:

    DELETE /tarefas/1
    

    Perceberam como fica mais limpo e intuitivo? A URL representa o quê (/tarefas) e o método HTTP representa a ação.

    É uma diferença pequena no nome, mas que muda o jeito de pensar na hora de construir nossas APIs com qualquer tecnologia/framework.

    Compartir
    Recomendado para ti
    Microsoft Certification Challenge #4 - DP 100
    Microsoft Certification Challenge #4 - AZ 204
    Microsoft Certification Challenge #4 - AI 102
    Comentarios (0)
    Recomendado para tiMicrosoft - Azure AZ-900