Laden...

Redundante Datenhaltung

Erstellt von Sieben vor 17 Jahren Letzter Beitrag vor 17 Jahren 4.093 Views
Sieben Themenstarter:in
140 Beiträge seit 2006
vor 17 Jahren
Redundante Datenhaltung

Huhu,

macht Redundante Datenhaltung Sinn?? Bzw ist sowas überhaupt Klug?

Und zwar versuch ich mich grad an einem kleinen "Mensch Ärger dich nicht" Spiel.
Mir geht es hier primär um die Datenhaltung der einzelnen Spielfiguren.

Mir fallen momentan 2 Möglichkeiten ein:
Ich habe ein Feld Klasse, der alle Spielfelder verwaltet und diese weiß, welche Spielfigur auf welchem Feld steht.

Oder aber ich habe mehrere Spieler Klassen und diese Spieler haben mehrere Spielfiguren, die sie auf die Spielfelder platzieren können.

Nur Frage ich mich ob es nicht sinnvoll sein könnte beide Möglichkeiten umzusetzen. So wüsste nicht nur das Spielfeld selbst wo die einzelnen Steine stehen, sondern auch jeder Spieler für sich... Nachteil dieser Methode ist der erhöhte Verwaltungsaufwand. Vorteil, ist das man seine Spielfiguren schneller findet...

Was meint ihr... ist es sinnvoll Daten manchmal doppelt zu haben??

gruß Sieben

Nur die Kogge schwimmt! 😁

3.825 Beiträge seit 2006
vor 17 Jahren

Hallo 7,

Ich habe ein Feld Klasse, der alle Spielfelder verwaltet und diese weiß, welche Spielfigur auf welchem Feld steht.

So macht man das normalerweise. Doppelte Datenhaltung ist nicht erforderlich. Erschwert die Sache sogar weil man immer doppelt aktualisieren musst.

Zeichnen des Spielbrettes ist auch einfacher so.

Grüße Bernd

Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo Sieben,

redundante Datenhaltung kann durchaus Sinn machen. Gerade bei Objektorientierung ist sie im Gegensatz zu Datenbanken auch meist unkritisch, wenn die Methode so geschrieben sind, dass die Aktualisierung an allen Stellen sichergestellt ist.

herbivore

T
512 Beiträge seit 2006
vor 17 Jahren

An sich ist das keine Redundanz, sondern nur unterschiedliche Zugriffspfade. Einmal hat man den Zugriffspfad über die Spielfelder, oder man hat den Zugriffspfad über den Spieler, aber es ist ja immer die selbe Spielfigur.

Also eine Art Index. Natürlich kann das Sinn machen, es hängt davon ab wie gut die einzelnen Zugriffspfade auf deine Anwendung passen. Es ist zum Beispiel eigentlich immer Sinnvoll einen Zugriffspfad über das Spielfeld zu haben. Man will ja ziemlich oft auf Kollisionen testen. Manchmal will man aber auch für alle Figuren eines Spielers eine bestimmte Aktion ausführen (sie sollen blinken z.B.), dann ist der Zugriffspfad über den Spieler natürlich der bessere.

Redundant wird es eigentlich erst dann, wenn man z.B. im Spielfeld speichert, wo die Spielfigur ist, und in der Spielfigur speichert, auf welchem Feld sie sich befindet. Oder zu welchem Spieler gehört die Figur, und welche Figuren gehören dem Spieler. Dann hat man die Informationen doppelt vorliegen, und muss dann dafür sorgen, dass die Daten konsistent bleiben. Das ist an sich aber auch unkritisch. Problematisch kann es dann werden, wenn mehrere Threads gleichzeitig auf den Daten arbeiten.

e.f.q.

Aus Falschem folgt Beliebiges

Sieben Themenstarter:in
140 Beiträge seit 2006
vor 17 Jahren

Huhu

erstmal dankää für die Antworten. Ich denke ich werd mich mal daran Versuchen nur das Wichtigste doppelt zu halten. Bin ja mal gespannt ob ichs hinbekomme

gruß Sieben

Nur die Kogge schwimmt! 😁