PDA

View Full Version : Creare un sdk


franksisca
15-01-2016, 16:05
Ragazzi la mia applicazione web espone dei servizi RESTful.

Ora vorrei realizzare un SDK, ma ho qualche dubbio sella sua funzionalità

OoZic
19-01-2016, 18:34
Ragazzi la mia applicazione web espone dei servizi RESTful.

Ora vorrei realizzare un SDK, ma ho qualche dubbio sella sua funzionalità

ho realizzato qualche mese fa un SDK in JS (node), spara

franksisca
20-01-2016, 09:11
ho realizzato qualche mese fa un SDK in JS (node), spara

Fondamentalmente non credo sia di reale utilità la realizzazione di un sdk, essendo tutte le funzionalità esposte su servizi RESTful.

Al massimo potrei implementare una politica di registrazione degli user a cui dare accesso alle API

OoZic
24-01-2016, 00:40
puo' anche essere che un SDK semplifica la vita gestendo magari la parte di autenticazione.

nell'sdk che ho fatto ad esempio si parla di API REST ma il vantaggio dell'SDK e' che non devi occuparti di chiedere un token, di metterlo come header, di fare hash delle risposte, ecc... ti permette di saltare tutto questo e avere dei metodi semplici

tomminno
25-01-2016, 14:13
Secondo il mio modo di vedere se hai fatto una API e hai bisogno di un SDK per richiamarla comodamente forse hai sbagliato ad implementare le API :D
Diverso il discorso se tu volessi fare un SDK per richiamare le tue API nei vari linguaggi es. SDK Java, SDK .Net, SDK PHP ecc... in cui sostanzialmente vai a mappare l'object model esposto dalle tue API secondo le convenzioni dello specifico linguaggio.
Andare a mappare API RESTful è sempre una goduria, non sai mai esattamente cosa un metodo ti ritornerà :muro:

franksisca
26-01-2016, 15:58
puo' anche essere che un SDK semplifica la vita gestendo magari la parte di autenticazione.

nell'sdk che ho fatto ad esempio si parla di API REST ma il vantaggio dell'SDK e' che non devi occuparti di chiedere un token, di metterlo come header, di fare hash delle risposte, ecc... ti permette di saltare tutto questo e avere dei metodi semplici

Ok, se sono servizi pubblici quindi è inutile :P

Secondo il mio modo di vedere se hai fatto una API e hai bisogno di un SDK per richiamarla comodamente forse hai sbagliato ad implementare le API :D
Diverso il discorso se tu volessi fare un SDK per richiamare le tue API nei vari linguaggi es. SDK Java, SDK .Net, SDK PHP ecc... in cui sostanzialmente vai a mappare l'object model esposto dalle tue API secondo le convenzioni dello specifico linguaggio.
Andare a mappare API RESTful è sempre una goduria, non sai mai esattamente cosa un metodo ti ritornerà :muro:

infatti il mio dubbio è quello...essendo le API fatte bene (visto che funzionano e sono anche ben documentate) non vedo la necessità di sviluppare SDK backend. Discorso diverso invece se dovessi sviluppare un SDK mobile, quindi platform-dipendente. In quel caso allora sarebbe davvero diverso il discorso!!!

Daniels118
27-01-2016, 13:52
Fa sempre bene avere uno strato software che esponga l'interfaccia nascondendo l'implementazione sottostante. Anche se non sviluppi un vero e proprio sdk ti conviene mettere le chiamate http all'interno di moduli/classi separate. Il codice viene più pulito perché guardandolo vedi solo i verbi dei tuoi servizi e i relativi parametri, che altrimenti si disperderebbero in mezzo al protocollo http. Un altro vantaggio molto più importante (soprattutto se i servizi devono essere distribuiti a terzi), è quello di poter modificare i servizi senza cambiare il modo di richiamarli, poiché le modifiche necessarie vengono implementate nei moduli che implementano l'interfaccia.