Я использую NSCoding
для кодирования своих объектов и сохранения их на диск в качестве функции «кэширования», при которой нет необходимости загружать данные при каждом запуске моего приложения. Сейчас я сохраняю эти данные в папке «Документы» приложения, которое я прочитал, не удаляется при обновлении приложения.
Так что меня беспокоит то, что я делаю некоторые обновления в моем классе, например, добавляя переменную экземпляра. А затем загружает приложение в App Store. Поэтому, когда пользователь обновляется до новой версии, старые объекты, сохраненные в папке «Документы», кодируются без той новой переменной экземпляра, которую я добавил в новой версии. Так что, когда мое приложение попытается декодировать сохраненные объекты во время запуска, оно не будет выполнено, потому что «старые» объекты из папки «Документы» не были закодированы с помощью этой новой переменной?
Как бы я справился с этой проблемой? Убедитесь, что я пишу мои классы "правильно" с самого начала? Я уверен, что в конечном итоге мне нужно будет изменить один из моих классов, а затем разбить старые сохраненные объекты на диске.