Paradigma REST (REpresentational State Transfer) e differenze con il RESTful

Paradigma REST (REpresentational State Transfer) e differenze con il RESTful

Paradigma REST

REpresentational State Transfer (REST), è un paradigma architetturale per servizi basati sul Web. E’ un termine introdotto nel 2000 nella tesi di dottorato da Roy Fielding, uno degli autori dell’HTTP. REstful Web service indica quei servizi basati sul web che rispettano i vincoli del paradigma REST.

Paradigma REST (REpresentational State Transfer)

Un’applicazione distribuita è RESTful se rispetta 6 proprietà fondamentali:
– Client-Server;
– Stateless;
– Cacheable, i client possono eseguire caching delle risposte dei server ;
– Layered systems, un client può connettersi direttamente al server o ad un suo intermediario;
– Code on demand (opzionale), il server può estendere temporaneamente le capacità del client consentendogli di ottenere codice aggiuntivo. Ad esempio componenti compilati come Applet Java o linguaggi di scripting client-side come JavaScript ;
– Uniform interface, l’interfaccia tra client e server è semplice ed uniforme. Ne risulta che effettivamente il WWW è RESTful.

 

Restful Webservice

Differenze REST e RESTful

Non c’è uno standard ufficiale per RESTful WS i quali possono essere definiti REST in senso lato: essi sono cross-platform, interoperabili e invocabili mediante interfaccia pubblica. I WS non sono REST in senso stretto a causa di WSDL, SOAP.
Per RESTful WS si intende una API Web aderente al paradigma REST con le seguenti caratteristiche:
– HTTP come protocollo di comunicazione;
– ogni risorsa è identificata da un URI;
– le risorse sono rappresentate in formati interoperabili come html, json o xml;
– per effettuare le operazioni CRUD (Create Read Update Delete) si adoperano i metodi PUT, GET, POST e DELETE.

SOA, Web 2.0 e Web Service

Il web 2.0 tende verso SOA. Molti siti nel web 2.0 offrono servizi agli sviluppatori mediante:
– API (application programming interface) ad hoc, con discovery manuale e composizione manuale. Per discovery manuale si intende la ricerca mediante motori di ricerca; per composizione manuale si intende il mashup;
– Web Service, caratterizzati dallo stack tecnologico standard SOAP + WSDL + UDDI, da servizi RESTful e che favoriscono l’automazione dei meccanismi di discovery e composizione.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *