Web services

Il termite 'web service' è un concetto decisamente generico, non fa riferimento a nessuna tecnologia specifica ma semplicemente al modo con cui è possibile interagire con un programma.

In pratica qualsiasi programma in grado di essere utilizzato da più computer sulla stessa rete è considerato un 'servizio web'

Questa è la definizione teorica ufficiale, nella pratica le cose sono un po' differenti e quasi sempre quando parliamo di servizi web ci riferiamo a due tipologie molto precise di programmi.

Servizi SOA

Sono dei programmi che comunicano tramite un protocollo chiamato SOAP: altro non è che un XML con una struttura prefissata.
In pratica tutti i dati in input e in output saranno in formato XML

Servizi Rest

Sono dei programmi che comunicano tramite un formato dati JSON

 

Ok, mi rendo conto che tutto ciò possa apparire banale a differenza di questi nomi decisamente complessi, ma vi posso garantire che nella realtà non è nulla di complicato. Semplici programmi che vengono richiamati con una struttura dati o con un'altra.

Se userete XML vi ritroverete con un'architettura SOA, se userete JSON vi ritroverete a con un'architettura Rest.

Perché queste differenze?

Semplicemente i servizi SOA sono nati in un'epoca in cui sembrava che XML fosse la cura di tutti i mali che affliggevano l'informatica.

Successivamente molti progetti hanno considerato migliore JSON (molto più semplice da elaborare per javascript) e hanno modificato il concetto precedenti con questo protocollo cambiandone il nome.

Semplice vero?

Leave a comment