Frage

Eine weitere newbie-Frage:Was ist der beste Weg zum speichern von Daten in eine Cocoa-Anwendung geschrieben in Obj-C?Zum Beispiel, wenn ich wollen zu schaffen eine Art von "quizzer", das Quiz den Benutzer mit vor-geschrieben (und user-written) Fragen?Wie sollte ich speichern diese Fragen und Antworten?Core Data?

Vielen Dank!

War es hilfreich?

Lösung

Natürlich ist es Core Data!

Es wird alles im Griff..werfen Sie einen Blick hier: http://developer.apple.com/macosx/coredata.html

Es ist ein full-API verarbeiten kann:

  • ORM zwischen Datenbanken und run-time-Objekte
  • Persistenz
  • automatische Gebäude-tools (wie ein ER-editor)
  • es ist bereit, aus der box, Sie nicht brauchen, um zu implementieren, die fast nichts..haben Sie bereits Zugriff auf Ihre Daten Abfragen, um das Controller-Objekt

Wahrscheinlich ist dies die Lösung ist über-Größe für Ihr problem, aber Sie werden lernen, wie man es mit einem einfachen Fall ist, und ich werde kommen praktisch in der Zukunft..

Andere Tipps

Core Data ist sicherlich eine gute Wahl, wie @Jack gezeigt hat. Es gibt einige andere Optionen, wie gut.

  1. NSCoding - Sie können Ihre Modellobjekte entsprechen dem NSCoding Protokoll (ähnlich java.io.Serializable) machen, welche Mittel Sie in der Lage sein würden, um sie direkt auf Dateien zu schreiben. Ich habe festgestellt, dass dies eine gute Option ist, wenn ich nicht über große Datenmengen zu bestehen, und die Daten, dass ich persistierenden eine relativ einfache Struktur hat.

  2. SQLite - Wenn Ihre Daten sehr relational ist, Sie können mit Hilfe einer Datenbank (wahrscheinlich SQLite) direkt zu betrachten. Core Data ist ein Objekt zu speichern, und während es Dinge wie Beziehungen zwischen Objekten behandelt, ist es nicht zulassen, dass Sie wirklich nützliche Dinge wie INNER/LEFT/OUTER/CROSS/NATURAL JOIN oder andere Multi-Table-Betreiber tun.

  3. NSUserDefaults - wenn Ihre Daten sehr klein sind und nur im wesentlichen Schlüssel-Wert-Paaren, dann können Sie wahrscheinlich alles in das NSUserDefaults Objekt werfen, die es für Sie in der Voreinstellungsdatei anhalten werden. Aber selbst, wenn Ihre Daten einfach, NSUserDefaults vielleicht nicht die beste Option sein, wenn Sie viel davon haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top