Come molti sanno, lo sviluppo mobile è alle stelle in questi giorni e, credo, influisce su ciò che codifichiamo. Per essere precisi, sono interessato allo sviluppo di servizi Web per un'applicazione mobile.
Vedo due possibili architetture: RPC e REST. Ho sviluppato entrambi i servizi REST e RPC e quello che ho osservato è che i servizi RPC sono molto più facili da codificare, specialmente in linguaggi come PHP. Il problema con esso sembra essere la scalabilità: il lato server può facilmente trasformarsi in un pasticcio quando sono presenti molte procedure.
REST, d'altro canto, sembra essere molto più strutturato, il lato server diventa relativamente facile da mantenere ma ha il potenziale di spezzare i dati in più risorse, il che è dannoso per le applicazioni mobili (per molteplici ragioni).
Da quanto ho sperimentato, RPC sembra un po 'meglio nella maggior parte dei casi:
- Entrambi, lato client e lato server, sono interessati a ridurre al minimo il numero di procedure disponibili e le chiamate effettuate.
- Le seguenti regole architettoniche non contrastano con le ottimizzazioni altrimenti possibili.
Non mi aspetto che qualcuno mi spieghi cosa sono REST e RPC, il web ne è pieno. Voglio che le persone che hanno esperienza nello sviluppo di app mobili esprimano le loro opinioni sull'utilizzo di queste due architetture sul lato server. I suggerimenti sono anche benvenuti (chi non ama i suggerimenti, eh?).