2012-10-14 11 views
8

Ich schreibe eine Anwendung, die Daten speichern muss. Ein einzelnes Datenpaket umfasst ungefähr 4 Klassen mit vielen Abhängigkeiten zwischen ihnen. Zum Beispiel hat Klasse A eine Liste von Objekten B und B hat eine Liste von Objekten C und einige weitere Abhängigkeiten ...SQLite oder Serialisierung

Und ich frage mich, was wäre besser. Halten Sie sie in SQLite db oder serialisieren jedes Paket separat und speichern Sie sie in serialisierten Dateien?

+4

Wenn jemand interessiert, ich wählte Serialisierung: P –

+1

Sie sollten wirklich [nicht Serialisierung in Android] (http://stackoverflow.com/questions/3611843/is-using-serializable-in-android-bad). Ich schlage vor, dass Sie [GSON] (http://code.google.com/p/google-gson/) aufrufen. – m0skit0

Antwort

3

Für mich wäre die einzige richtige Lösung, die Daten in einer Datenbank zu speichern, besonders wenn es irgendwelche Abhängigkeiten gibt. Für Anfänger kann es am Anfang schwierig sein, in die Datenbankerstellung einzusteigen. aber nachdem Sie eine Datenbank in der richtigen Form erstellt haben, müssen Sie nur die Daten einfügen und Sie werden in Zukunft keine Probleme haben, wenn Sie etwas ändern oder Ihre App erweitern möchten. Bei der einfachen Serialisierung muss die Logik innerhalb der App gelöst werden und kann zu mehr Problemen führen, besonders wenn Sie Abhängigkeiten haben.

Wenn Sie ein gutes Tutorial benötigen, um Daten für das Speichern Sie in diesem Tutorial http://thenewboston.org/watch.php?cat=6&number=111

Für andere verschiedene Lösungen für das Speichern von Daten gibt es auch einige Tutorials auf der Website, Nr aussehen sollten. 108 - 110 der Android-Programmierung

1

IT hängt von der Verwendung der Daten ab. Sie können die JSON/GSON-Serialisierung gut auswählen und vermeiden den Overhead von ORM gegenüber SQLite. (Overhead bedeutet zusätzliche Codierung für Marshall zu/von der db) Wenn Ihre Daten jedoch einem Wachstum unterliegen oder etwas, das besser von einer db verwaltet werden könnte (viel nicht sequentieller oder wahlfreier Zugriff über einen größeren Datensatz), dann gehen Sie für SQLite und ORM. Am Ende kommt es darauf an, welche Art von Daten Sie verwalten möchten. Wenn es sich bei Ihrem Datensatz um etwas handelt, das wachsen kann und viel zufälligen Zugriff erfordert, kann es sich lohnen, SQLite zu verwenden.