Sie auf jeden Fall kann Schiff eine vorgefüllte Core Data Store in Ihrer App, wie Sie könnte eine vorgefüllte SQLite-Datenbank oder ein großer plist mit all Ihren Daten (obwohl das klingt wie eine schlechte Passform für dieser Fall) oder was auch immer.
Core Data ist nett, weil es alles native Cocoa ist, behandelt es alle das Laden von der DB in native Objekte, es wurde gnadenlos optimiert, und so weiter. Aber es gibt auch eine Menge Code, um Dinge zu tun, die dir egal sind: Revisionen bearbeiten, Änderungen speichern, Support rückgängig machen und wiederherstellen usw. Also gibt es nicht wirklich eine offensichtlich richtige Antwort in der einen oder anderen Richtung.
Eine Menge hängt von Ihrem Komfort mit Core Data und den Alternativen ab. Sind Sie zufrieden mit der SQLite API (oder einer der vielen Cocoa wrappers), um Ihre Daten zu bekommen? Wenn ja, dann könnte das einfacher sein. Wenn Core-Daten das ORM für Sie wären, wäre das ein großer Gewinn. Auf der anderen Seite verwenden komplexe Abfragen mit Core Data die Prädikat-APIs, die komplexer sein können als die Verwendung von Bare SQL mit SQLite. Derartiges.
Ich würde es nicht als eine fehlerhafte Frage betrachten. Während CoreData SQLite für * zugrunde liegenden * Speicher verwendet, haben Sie keine Schnittstelle zu SQLite selbst. Stattdessen leitet sich die Macht von CoreData von seinen Klassen und Methoden ab. Zum Beispiel hilft 'NSFetchedResultsController', wenn es mit einem' UITableView' verwendet wird, beim effizienten Lesen von Daten von der Platte, wie es benötigt wird, und bei der entsprechenden Speicherverwaltung. Sie müssen dies im Wesentlichen selbst tun, wenn Sie SQLite verwenden. – jbrennan
Wohin geht die SQLite API, wenn Sie Core Data verwenden? Soweit ich das beurteilen kann, ist es immer noch da. –
Es ist mir egal, ob ich auf beide gleichzeitig zugreifen kann (wahrscheinlich eine schlechte Idee, wenn Core Data Ihre Objekte verwaltet). Ich möchte einen benutzen und muss wissen, welcher der beste ist. – Christian