Единственная возможная вещь в NSUserDefaults заключается в том, что если вашему приложению нужно удалить свое хранилище CoreData или вы не хотите суетиться с реализацией поточно-ориентированных CoreData, это требует меньшего обслуживания в этом отношении.
янное хранение данных на iPhone обычно выполняется с использованием Core Data или sqlite3. Большинство людей предпочитают использовать NSUserDefaults в качестве хранилища для настроек приложения, а не использовать его в качестве обычной базы данных (такой как sqlite).
Я обнаружил, что в NSUserDefaults может храниться большой объем данных, он чрезвычайно прост в использовании и быстр. Так почему бы не использовать это в качестве постоянного хранилища? Каковы ограничения NSUserDefaults в качестве базы данных?
Обновить:
Я часто использую три разных способа сохранения моих данных на диск.
Я больше не использую FMDB (или sqlite напрямую). Каковы основные преимущества и недостатки каждого подхода?
Некоторые преимущества NSUserDefaults, с которыми я столкнулся:
Сортировка, группировка и т. Д. Могут быть легко выполнены с помощью NSPredicate.NSUserDefaults является потокобезопасным.Для извлечения и сохранения данных в NSUserDefaults требуется одна строка.