RESTlike e RESTFUL

RESTlike e RESTFUL são duas maneiras para arquitetar os endereços de recursos em aplicações web com base em REST.

REST atua com princípios arquitetônicos simples, como HTML, XML (linguagens de marcação) e HTTP (comunicação de hipertexto), não incluindo em sua definição outros protocolos para transmissão de mensagem ou registros. Estado Representacional se refere às representações de dados no ciclo de vida da aplicação, dadas as interações com o usuário. REST Entende como um só os recursos e suas representações.

Sistemas API arquitetados com vistas a acessos REST são chamados RESTFUL. Diferente da tradução literal “descanso”, propõem muito trabalho e agilidade no acesso e transformação dos dados com ações basicamente verbais via URL. Requisições HTTP enviadas http://site.com/objeto/acao interagindo com GET, POST, PUT, DELETE e retornos de dados estruturados XML, JSON e, por vezes, HTML.

RESTFUL é diferente de RESTlike por endereçar requisições de forma mais semântica, coesa e intuitiva, utilizando corretamente os nomes de recursos junto a métodos HTTP para realizar operações.

Utilizar PUT (ou patch quando parcial) é necessário pois evita o risco de persistir a mesma informação duas vezes.

Utilização nas APIs

  • Ambientes web, onde requisições são realizadas por usuários (clientes) e servidores respondem com dados.

Benefícios de REST

  • Simplicidade nas operações com dados

REST parte dos paradigmas da web. Também escrevi um post sobre o assunto. confira!

2 Anos de experiência em PHP são base sólida para assimilação de outras linguagens e busca de novos desafios. A criação de Sistemas Web e Websites responsivos são minha especialidade. Busco constantemente o aperfeiçoamento das técnicas utilizadas com foco em boas práticas através do conhecimento adquirido das metodologias. O conhecimento diferenciado da língua norte-americana proporciona segurança para programar na língua e entender manuais técnicos. Já em posse dos conceitos as metas perseguidas têm sido o aprofundamento em JavaScript serverside, ASP.NET e aplicações mobile híbridas.