Android Speichern von Informationen in Code oder extern

slothsoft

Mitglied
Huhu!

Mal eine Frage an die Experten: Mal angenommen ich würde ein Spiel schreiben, bei dem auf einem Canvas geschrieben würd. Nun hätte ich ja mehrere Möglichkeiten, die Informationen für die Spiel-Objekte anzulegen.

Zum einen könnte ich die Informationen in Resourcen-Dateien anlegen, z.B. SVG oder ein speziell auf meine Zwecke ausgelegtes XML:

[XML]
<svg>
<rect x="100" y="100" width="500" height="200" fill="white" stroke="black" stroke-width="20px"/>
</svg>
[/XML]

Zum einen könnte ich eine Painter-Klasse haben, sagen wir so:

Java:
public class GameObjectPainter implements Painter {

    public void paint(Canvas canvas) {
        canvas.drawRect(100, 100, 600, 300, whiteFillPaint);
        canvas.drawRect(100, 100, 600, 300, blackStrokePaint);
    }
}

Die ich nun wiederrum als Singleton in einer Registry speichern könnte oder wahlweise als Klassen-Referenzen (
Code:
Class<?>
) und bei Bedarf instanziieren.

Alles hat Vor und Nachteile, ist klar. Meine Frage betrifft jetzt speziell Android: Welcher Ansatz eignet sich am besten für eine große Menge an Spiel-Objekten, von denen sehr wenige auf dem Bildschirm zu sehen sind?

Meine Annahme: Geladene Resourcen-Dateien können bei Nicht-Gebrauch vom Garbage-Collector eingesammelt werden, brauchen aber sicherlich verhältnismässig lange zu laden, haben aber bei Nicht-Gebrauch nur wenig Speicherverbrauch (es werden ja nur
Code:
ints
oder möglicherweise Dateinamen gespeichert).

Singletons würden sich für die Darstellung von so gut wie aller Spiele-Objekten aus einer kleinen Gesamt-Menge eignen, da der Garbage-Collector aber auch sie nicht aufräumt, eignen sie sich nur bedingt für diesen Anwendungsfall.

Reine Objekte müssten über
Code:
newInstance()
instanziiert werden und ihre Referenzen müssen so oder so geladen werden, wobei ich annehme, dass einmal geladene Klassen auch nicht mehr aufgeräumt werden. Zusätzlich gibt es eine verhältnismässig starke Kopplung.

Zusatzfrage: Kennt einer eine Möglichkeit, das schon mal vorab exemplarisch zu testen? Gibt es vielleicht noch eine Möglichkeit, an die ich nicht gedacht habe?

Wenn du diesen Block gelesen hast, danke ich schon mal und freue mich auf hilfreiche Antworten. :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Foto machen und es direkt per URI speichern und auswählen Android & Cross-Platform Mobile Apps 4
M Firebase RealtimeDatabase - Daten aus Queries in CSV File speichern Android & Cross-Platform Mobile Apps 1
I Android CameraApp, eingebaute App nutzen und Ergebniss als Datei speichern Android & Cross-Platform Mobile Apps 0
R Android Daten speichern und anzeigen Android & Cross-Platform Mobile Apps 7
T Screenshot speichern ohne alte Datei überschreiben Android & Cross-Platform Mobile Apps 3
P Daten bzw Objekte auf das Handy lokal speichern Android & Cross-Platform Mobile Apps 29
P Objekt mit Shared preferences speichern Android & Cross-Platform Mobile Apps 0
J Download und speichern mit jsch klappt nicht Android & Cross-Platform Mobile Apps 5
L Android SQLite Datenbank auf SDCard speichern Android & Cross-Platform Mobile Apps 5
M Android App → Problem mit dem Speichern von einem Bitmap–Objekt. Android & Cross-Platform Mobile Apps 1
V Kennt jemand ein Programm , um .DEX Dateien zu öffnen, bearbeiten und wieder speichern? Android & Cross-Platform Mobile Apps 2
B Dateien Speichern Android & Cross-Platform Mobile Apps 6
G Android Daten in einer Datenbank speichern Android & Cross-Platform Mobile Apps 1
V Bytes (Wertebereich 0-255) über BLE empfangen,lesen und speichern Android & Cross-Platform Mobile Apps 1
JavaWolf165 Android Fehler beim Speichern/Downloaden einer Datei Android & Cross-Platform Mobile Apps 2
Anfänger2011 Speichern von bereits gefüllten Dateien Android & Cross-Platform Mobile Apps 8
M Android Speichern einer .txt Datei im InternalStorage Android & Cross-Platform Mobile Apps 2
B Fragen zum Speichern einer Datei auf dem Gerät? Android & Cross-Platform Mobile Apps 7
G Speichern jede zehnte sekunde Android & Cross-Platform Mobile Apps 1
G Sensordaten speichern Android & Cross-Platform Mobile Apps 3
S Dynamische EditText View eingaben in Datenbank speichern Android & Cross-Platform Mobile Apps 0
L Android Apache POI: Datei speichern geht nicht Android & Cross-Platform Mobile Apps 1
A Android Daten in der Cloud speichern (Google) Android & Cross-Platform Mobile Apps 1
Streeber Android ExpandableListView Child-Auswahl speichern Android & Cross-Platform Mobile Apps 3
S Android Geschossenes Foto in anderem Ordner speichern Android & Cross-Platform Mobile Apps 11
G Wissen frage - wo am besten Speichern. Android & Cross-Platform Mobile Apps 1
E Android Zeichnen auf Canvas - Teilbereich als Bild speichern Android & Cross-Platform Mobile Apps 3
L Android Text aus Textfeld speichern Android & Cross-Platform Mobile Apps 5
R Android Objekt in bestimmten Pfad auf Android-gerät speichern Android & Cross-Platform Mobile Apps 8
G Datei im Ordner speichern Android & Cross-Platform Mobile Apps 2
P Android Fragen reihenfolge speichern / laden Android & Cross-Platform Mobile Apps 2
T Bild speichern Servlet Android & Cross-Platform Mobile Apps 2
B Inhalt von StringBuffer in Textdatei speichern? Android & Cross-Platform Mobile Apps 6
U Android Daten dauerhaft speichern? Android & Cross-Platform Mobile Apps 2
P Java ME benutzer daten speichern Android & Cross-Platform Mobile Apps 5
O eingehende Daten speichern Android & Cross-Platform Mobile Apps 2
N Android Informationen zwischen Tabs austauschen Android & Cross-Platform Mobile Apps 2
N "Schöne" Datatable in Android und setzen von Parametern von Textview im Code Android & Cross-Platform Mobile Apps 5
S onClickListener auf Buttons die im Code erzeugt wurden setzen. Android & Cross-Platform Mobile Apps 8
W Code läuft unter SDK 27 aber nicht SDK 30 Android & Cross-Platform Mobile Apps 17
M QR-Code auslesen mit Tabletkamera Android & Cross-Platform Mobile Apps 3
C Auf Play Store verlinken - Code in einer Extraklasse Android & Cross-Platform Mobile Apps 1
D HTML Code von Website abrufen Android & Cross-Platform Mobile Apps 26
K Android Code so OK? Android & Cross-Platform Mobile Apps 0
C Android Code in mehrere .java verteilen Android & Cross-Platform Mobile Apps 6
M Code effizienter machen Android & Cross-Platform Mobile Apps 16
R Android YouTube Video per Code streamen Android & Cross-Platform Mobile Apps 5
P Brauche Hilfe bei Code Snippet Android & Cross-Platform Mobile Apps 10
L Android Android über Java Code connecten? Android & Cross-Platform Mobile Apps 2
A Android Android-Code.de - Das Android-Entwickler Forum Android & Cross-Platform Mobile Apps 3
R Android Ist das ein akzeptabler Code? Android & Cross-Platform Mobile Apps 7
H Mjpeg Code läuft unter Java jedoch nicht unter Android? Android & Cross-Platform Mobile Apps 11
J Android QR-Code Scanner mit OpenCV/JavaCV Android & Cross-Platform Mobile Apps 1
P J2ME Code-Beispiele Android & Cross-Platform Mobile Apps 2
2 Code ineffizient? Android & Cross-Platform Mobile Apps 6
H HELP! Code verbessern? Android & Cross-Platform Mobile Apps 3

Ähnliche Java Themen

Neue Themen


Oben