Tach!
wenn ich einen User-Objekt aus der Database über ein
UserRepository
haben möchte, jedoch findet die Database einfach keinen angeforderten Record, dann wird zwangsläufig ein Fehler auftreten, weil das System keinenTUser
fetcht sondernnull
zurück gibt.
Dann musst du diesen Fall berücksichtigen.
Und Ich möchte sehr gern mit Return-Type arbeiten können.
Kann man. null
ist auch ein möglicher Wert, wenn man eine Klasse als Rückgabe definiert hat. Was sonst würdest du denn zurückgeben wollen, also was für Werte soll dein User-Objekt haben, wenn es den User nicht gibt? Das wäre dann ein Widerspruch, denn ein User, den es nicht gibt, kann keine Werte haben.
Die Frage ist noch, ob das Repository eine Exception wirft, aber dann von dir gesteuert (wenn null, dann throw), oder ob es in dem Fall null zurückgibt.
Ob die Abfrage eines nicht existenten Users ein Fehler ist, kann das Repository nicht entscheiden. Es sollte da neutral mit null bekanntgeben, dass es kein Ergebnis gibt.
Um dem Problem Herr zu werden könnte ich eine Existenz-Abfrage vorher machen was ich gemacht habe…
Nö, es reicht die Ergebnismenge dahingehend zu untersuchen, ob sie leer oder mit Inhalt ist, und dann entweder ein User-Objekt erzeugen oder null zurückgeben.
dedlfix.