Sto lavorando a un'app per iPhone/iPad/Android che comunica con un'API JSON.Best practice per compatibilità con le versioni precedenti delle API
La prima versione della versione dell'app è completa e ora sono in corso ulteriori fasi di sviluppo. Nelle fasi aggiuntive, l'app deve essere integrata con una nuova versione dell'API e consentire all'utente l'accesso a funzionalità aggiuntive quali nuove schermate o comportamenti modificati all'interno di schermate esistenti. L'app deve tuttavia essere retrocompatibile con le versioni precedenti dell'API.
Qual è la migliore pratica per affrontare un simile requisito? potevo di poteva fare controlli in tutto il codice:
if (APIVersion == 1) {
} else if (APIVersion == 2) {
} else if (APIVersion == ....) {
}...
Ma io sono preoccupato per la scalabilità di questo approccio. Mi viene in mente il metodo di produzione, ma non sono sicuro di quanto mi avrebbe portato.
Grazie, Mark
Grazie. Sono andato con il primo suggerimento del punto elenco. Le modifiche erano abbastanza ridotte, quindi sono riuscito a eseguire i controlli delle condizioni della versione API e ad estendere i metodi con parametri facoltativi diversi oppure, in alcuni casi, a creare nuovi metodi per versione API. La versione API non era sotto il mio controllo poiché si trattava di un'API client. – Mark
Questa è una risposta molto bella, speravo di ottenere anche alcuni link e puntatori. – Alex