Halihallo Andreas
Jetzt habe ich das Problem, das als erstes die Auth-Klasse die Userdaten aus der Datenbank ermittelt, um diese zu validieren, und danach holt sich die User-Klasse den username und schickt im Prinzip dieselbe Abfrage an die Datenbank. Das ist nicht schön.
Habt Ihr eine Idee wie ich das gleichzeitig "schön" und ohne 2. Abfrage hinbekomme?
Ich versuche mal etwas allgemein zu formulieren:
Wenn zwei Klassen gleiche funktionen/daten haben, nenne ich das Coderedundanz.
Coderedundanz, wie in der Datebankmodellierung, verhindert man, indem man gleiche
Funktionen/Daten ausgliedert und als separate (ergänzende) Struktur ablegt. Auf dein
Beispiel bezogen hiesse das, dass du einen Layer (Schicht) unter die User und Auth Klasse
legst, welche die Daten einliest und im Speicher hält. Beide Klassen würden dann auf
diese "gemeinsame" Speicherrepräsentation der Daten zugreifen. Der Thread ist leider
schon im Archiv verschwunden, aber vielleicht brauchst du auch sowas, was ich brauche:
</archiv/2003/1/34949/#m190860>. Einen Datenbank-Layer, der die Daten (im RAM)
speichert; und Entity-Klassen (User, Auth), welche diese Daten dann holen. Das ganze ist,
wie in deinem anderen Thread, ein Caching-Problem; die Daten sollen nicht erneut
eingelesen werden müssen, sondern im Speicher gehalten werden.
Hoffe, dass diese etwas allgemein formulierte Antwort dennoch auf dein Thema/Frage passt.
Viele Grüsse und HTH
Philipp