3 Stimmen

Sollte xml oder sqlite3 verwendet werden?

Ich habe gerade mit der Entwicklung von iOS begonnen und entwickle derzeit eine Anwendung, die Daten nur vom Server liest und sie auf dem Bildschirm anzeigt. Was ich mir nicht sicher bin, ist, ob ich XML oder sqlite3 verwenden soll, um die Daten zu speichern. Welche Methode sollte bevorzugt werden und warum? Vielen Dank im Voraus.

1voto

Es ist wichtig zu bedenken, dass es sich um zwei verschiedene Dinge handelt, die für verschiedene Aufgaben geeignet sind. Wählen Sie diejenige, die zum Problem passt. (In diesem Fall würde ich wahrscheinlich XML oder "einfachen Text" verwenden, da es sich nur um einen einfachen Download-Cache handelt. Entweder könnte die Rohantwort behalten werden oder vielleicht wurden die Daten bereits in Objekte umgewandelt und dann automatisch in XML serialisiert oder ähnliches. Auf jeden Fall sollte es einfach gehalten werden.)

XML ist (im Kern) ein Markup-Format. XML-Dokumente haben eine (hoffentlich gut definierte) Struktur. Es gibt eine große Menge an Werkzeugen, die Manipulation und Abfragen innerhalb eines hierarchischen "Dokumenten"-Modells unterstützen. Ich verwende XML ziemlich oft als Serialisierungsformat und verwende es auch für lokale Caches, wenn angebracht (z.B. wenn keine nicht-hierarchischen Beziehungen vorhanden sind). XML wird oft vollständig in den Speicher geladen (z.B. ein DOM) für die Manipulation.

SQLite ist eine relationale Datenbank, die um Tabellen und Beziehungen zwischen Tabellensets herum aufgebaut ist. Die Möglichkeit, (komplexe) Abfragen auszuführen, ist der Bereich, in dem relationale Datenbanken wirklich glänzen. SQLite ist auch sehr schnell und kann große Datensätze verarbeiten, die nicht alle in den Speicher passen. Spalten in SQLite können auch Text (also XML) enthalten, sodass die Ansätze nicht orthogonal sind.

Viel Spaß beim Coden.

1voto

Petr Abdulin Punkte 32034

Es hängt wahrscheinlich alles davon ab, wie Daten verarbeitet werden, nachdem sie gespeichert wurden. Wenn Daten sortiert werden müssen, bestimmte Auswahl usw. verwendet werden, ist sqlite die bessere Lösung. Zweitens ist ein weniger wichtiger Punkt, wie viele Daten gespeichert werden, wenn es nur eine "Tabelle" mit 10 Zeilen ist, dann ist sqlite wahrscheinlich zu viel dafür.

0voto

saadnib Punkte 11115

Wenn Sie Daten vom Server lesen und auf dem Bildschirm anzeigen möchten und diese nicht lokal speichern müssen, verwenden Sie XML.

Wenn Sie sie lokal speichern möchten und nicht vom Server abrufen möchten, verwenden Sie XML-Dateien oder eine SQLite-Datenbank in Ihrem Projekt.

Wenn Sie vom Server abrufen und diese auch lokal speichern möchten, verwenden Sie zunächst XML, um Daten abzurufen, und verwenden Sie dann SQLite, um sie lokal zu speichern.

und schauen Sie sich die Antwort von @pst an, um den Unterschied zwischen ihnen zu sehen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X