может отправить загруженное хранилище Core Data в ваше приложение, так же, как вы могли бы заполнить базу данных SQLite или большой plist со всеми вашими данными (хотя это звучит как плохо подходит для этот случай) или что-то еще.
Основные данные хороши, потому что это все родные какао, он обрабатывает всю загрузку из БД на нативные объекты, безжалостно оптимизирован и т. Д. Но там также есть много кода, чтобы делать то, что вам не нужно: обрабатывать изменения, сохранять изменения, отменять и повторять поддержку и т. Д. Таким образом, на самом деле нет однозначно правильного ответа так или иначе.
Многое будет зависеть от вашего уровня комфорта как с основными данными, так и с альтернативами. Вам нравится работать с SQLite API (или одним из многих Cocoa wrappers), чтобы получить ваши данные? Если это так, то это может быть проще. Если Core Data делает ORM для вас, это будет большой победой, тогда идите именно так. С другой стороны, сложные запросы с использованием Core Data используют API-интерфейсы предикатов, которые могут быть более сложными, чем использование голого SQL с SQLite. Такого рода вещи.
Я не счел бы это неправильным вопросом. Хотя CoreData использует SQLite для * базового * хранилища, у вас нет никакого интерфейса с SQLite. Вместо этого власть CoreData происходит от его классов и методов. Например, 'NSFetchedResultsController' при использовании с' UITableView' поможет эффективно считывать данные с диска по мере необходимости и соответственно управлять памятью. Вы, по сути, остаетесь делать это самостоятельно, если используете прямой SQLite. – jbrennan
Где находится SQLite API при использовании Core Data? Насколько я могу судить, он все еще там. –
Мне все равно, могу ли я получить доступ к обоим сразу (возможно, плохая идея, когда Core Data управляет вашими объектами). Я хочу использовать его и знать, какой из них лучше. – Christian