Ich hatte die Seite leider erst nach meiner Frage gefunden - aber es bestehen dazu Restfragen:Hilft Dir das weiter?
Ich möchte Daten über eine XML-Datei persistieren (serialisieren des Menü-Objektes). - Ich würde sagen, sie wird maximal 10k groß.Was genau hast du den vor?
Ok, an der Stelle würde ich sagen, kommt die "goldene Regel" zum Tragen: Optimierung erst wenn es wirklich nötig ist!Aber prinzipiell mache ich das schon in einer Schleife in der ich einen Buffer immer wieder vollschreibe und mit den Daten etwas tue. Hausnummer 1024 byte Buffer oder so etwas.
Nein, je nachdem WAS man eben optimiert:Optimiert finde ich es, wenn man eben nicht alles erst mal in den Speicher müllt, sondern das Häppchenweise macht?! Vielleicht haben wir da ein unterschiedliches Verständnis von optimiert.
Und genau so eine Ausnahme habe ich hier ja.Im übrigen mache ich es auch so, sei es Dateien zu lesen, Streams zu lesen, XXX zu lesen. Ausnahmen gibts da bei mir meist nur in Config Dateien (xml) welche ich direkt komplett parsen lasse (von der lib) um dann den Object tree auszuwerten.
Ich möchte Daten über eine XML-Datei persistieren (serialisieren des Menü-Objektes). - Ich würde sagen, sie wird maximal 10k groß.
Ok, an der Stelle würde ich sagen, kommt die "goldene Regel" zum Tragen: Optimierung erst wenn es wirklich nötig ist!
Nein: das Menü ändert sich je nach Einsatzzweck. Momentan bin ich mir noch nicht sicher, ob ich eine Funktion in die Anwendung aufnehme, welche es erlaubt ein Menü anzulegen - oder ob dies am Rechner passiert (da dies mit Tastatur und Maus wesentlich komfortabler ist) und die xml dann einfach auf das Andorid-Gerät kopiert wird.Wäre das sqlite-Built-in von Android hier evtl. eine Alternative?
Überhaupt nicht! - Warum den Code unleserlicher und anfälliger für Fehler machen und dabei noch Zeit verschwenden, wenn es am Schluss keinen merklichen Unterschied bringt??? :noe:Eine sehr gewagte Aussage!
Sehe ich auch so. Erst wenn ich Probleme habe fange ich zu messen an und optimiere an den Stellen deren Optimierung tatsächlich etwas bringen. Aber mit einem byte-buffer arbeiten ist wohl eher common(best?) practice als premature optimization.Ok, an der Stelle würde ich sagen, kommt die "goldene Regel" zum Tragen: Optimierung erst wenn es wirklich nötig ist!
Klar, aber für einen reinen Funktionstest wäre es dennoch unötig.Aber mit einem byte-buffer arbeiten ist wohl eher common(best?) practice als premature optimization.
Man könnte evtl. auch über10k sind schon ziemlich happig für ein Android System.
getFilesDir()
Huh, da gibt es ja genügend Auswahl...Wenn du den Serializer-Weg gehen willst [...]
ORMLite für Android
Java Serializable
SQLite
JDOM
XSTREAM
Ich würde das Menü gern am Rechenr erstellen und dann damit die xml auf dem Gerät ersetzen.Die Aussage, dass Datenbanken nicht in Frage kommen weil sich die Daten ändern können auch auf anderen Plattformen sei mal einfach so dahingestellt
Das habe ich nicht verstanden. Meintest du, dass ORMLite zu XSTREAM kompatibel ist - also von einem Objekt die gleiche xml-Struktur erzeugt wird?wenn den ORMLite und XSTREAM Annotations könntest du aber die selben Klassen verwenden.
openFileOutput()
Damit ist gemeint, dass du einmal deine POJO-Klassen schreibst und die relevanten Member für DB und XML mit den Annotations des jeweiligen Framework ausstatten kannst.wenn den ORMLite und XSTREAM Annotations könntest du aber die selben Klassen verwenden.