GraphQL è un protocollo di comunicazione client-server per fornire dati alle webapp/mobile app in maniera strutturata e seguendo uno schema differente dal passato: in buona sostanza è il client che descrive la struttura e le informazioni che dovrà avere la risposta del server attraverso un linguaggio di query strutturato.
GraphQL è un linguaggio di query per le tue API e una runtime lato server per interagire con il database. Non è vincolato ad alcun tipo di database e può essere, di fatto, utilizzato nel codice esistente.
Nato da Facebook e utilizzato dal più grande social network al mondo; già questi possono essere buoni motivi per utilizzarlo.
I vantaggi
GraphQL rivoluziona il modo di pensare alle API e come esse servono risultati e dati alle Web Application. E’ di fatto il futuro del Web dove le richieste vengono gestite lato front-end e ne è la dimostrazione il framework Angular 2 dove attraverso il solo motore di front-end si può sviluppare un’applicazione completa ed ultraperformante.
GraphQL, attraverso librerie di terze parti, può essere integrato in qualsiasi framework ed utilizzato subito con il codice attuale.
Come usarlo
Nonostante in rete si trovino articoli che sposano l’idea che sostituirà REST siamo certi che l’uso di entrambe le tecnologie, in congiunzione, possa essere la soluzione migliore per sfruttare i vantaggi di entrambe.
Grazie al progetto Apollo potete ottenere un server , utilizzabile con Node.js, per iniziare ad usare subito GraphQL nei vostri progetti.
Contattaci subito per scoprire di più ed integrare GraphQL nelle tue Web Application.