Nel mio codice controllo la versione corrente del software all'avvio e la confronta con la versione memorizzata nei file di dati dell'utente. Se la versione è più recente, chiamo metodi diversi per aggiornare i vecchi dati alla versione più recente dei dati, se necessario.
Di solito devo creare un nuovo metodo per convertire i dati con ogni aggiornamento che modifica in qualche modo i dati dell'utente, e non posso rimuovere quelli vecchi nel caso in cui qualcuno abbia perso un aggiornamento. Quindi l'app deve essere in grado di passare attraverso ogni chiamata di metodo e aggiornare i propri dati fino a quando non ottengono i loro dati attuali. Con set di dati più grandi, questo potrebbe essere un problema.
Inoltre, recentemente ho avuto una breve discussione con un altro utente di StackOverflow e ha indicato di aggiungere sempre un timbro data al nome file per gestire le versioni dei dati, sebbene il suo ragionamento sul motivo per cui questo era meglio di memorizzare i dati della versione nel il file stesso non era chiaro.
Poiché raramente ho visto la gestione delle versioni dei dati degli utenti nei libri che ho letto, sono curioso quali sono le migliori pratiche per la denominazione di file di dati utente e procedure per l'aggiornamento dei dati più vecchi a versioni più recenti.
Modifica: Il 'timbro data' è nato da una discussione qui:
Poiché la domanda è troppo aperta, dovrei dire che sto cercando le procedure consigliate per l'aggiornamento dei dati utente tra le versioni.
Se possibile, sarebbe bello vedere le pratiche iOS / objective-c, ma non è obbligatorio.