RESTful webservices

Acabei de ler este excelente livro – RESTful Webservices. Julgo que qualquer pessoa que desenvolve aplicações para web deveria lê-lo.

Já conhecia algumas implicações da filosofia REST, e em particular a Arquitectura Orientada a Recursos (ROA). Abracei algumas delas no desenvolvimento de aplicações e frameworks, mas o siples facto de não usar SOAP e não manter estado no servidor não faz uma aplicação web RESTful. Caía muitas vezes no erro de usar o que o autor chama de RPC-hybrid, que pode ir de encontro à filosofia REST, mas não é Resource-Oriented.

De um modo geral o autor quer que a filosofia simplista da  web humana seja transladada para a implementação de web-services, e que, tal como na web humana, os serviços sejam:

Well-connected: A representação de um recurso deve conter links e forms para outros estados da aplicação, de forma aos clientes dos webservice não tenham de “saber” ou “adivinhar” com antecedência como construir URIs para outros recursos e estados da aplicação.

Addressable: Uma apliaçação deve expor todos os seus recursos através de URIs.

Stateless: O estado da aplicação não deve ser mantido do lado do servidor, mas sim deve estar completamente contido no URI.

Respect a uniform interface: Um recurso deve usar a interface HTTP  e os seus métodos como interface de manipulação. Isto implica usar os métodos menos conhecidos: PUT, DELETE, usar GET só para obter prepresentações e não alterar ou criar recursos, e usar POST só para criar novos recursos.

Só por usar estes princípios, uma aplicação web obtém uma série de vantagens:

  • escalabilidade natural da web
  • segurança e idempotencia de alguns métodos HTTP (GET, PUT, DELETE)
  • expôr-se a uma audiencia de clientes muito mais vasta, pois construirum cliente para um webservice deste tipo é muito mais simples e standard do que construir um cliente SOAP.

0 Responses to “RESTful webservices”

  1. No Comments

Leave a Reply




Tag Cloud:

Accessibility acessibilidade arquitectura de informação asimov assinatura banco de sons banda desenhada BD berro booking Bookyo Boomers branding cartão de visita Character citações cliente Comercial comics comunicação Content conteúdo conteúdos copy copywriting countries creative commons CRM cultura data mining deseho de interacção desenho desenvolvimento de produto design diferenciação distrubuição documentação documentos dynamic packaging e commerce Ecologia EDS educação estatísticas web estratégia forma formulários frameworks free stock images GDS george orwell gestão de projecto Glossário Google graphic grid Guidelines Icon IDS ilustração images impressão interfaces internet interpretação investigação iphone javascript leitura library linguística link analytics Madeira marketing metodologia micro formatos SEO usabilidade motores de busca música negociação NetMadeira networking nielsen Novidades oferta online operating systems pascal percepção pesquisa Portais portugal preço processo criativo processos produto Projectos pós modernismo qualidade quotes Rapidez redacção reservas online REST ROA screen resolution screen resolutions search search engine search engine optimization SEO servidor som standards style guide SWOT tecnologia testes de usabilidade the economist tourism travel travel agencies travel sites trial turismo usabilidade user experience valor virtualbox Web web browsers web design web services web stats web user WWW