AW: Wie mit dem Fehler in einer Klasse umgehen?
Zitat:
Ich hatte vergessen die Wurst wieder in den Kühlschrank zu tun. Als ich eben nach dem Hund geschaut habe hatte er die Wurst schon vertilgt. Ich tat so als hätte ich es nicht gesehen und er musste mit vollem Bauch mitkommen joggen. Könnte man sagen, ich habe eben diese Property nicht abgefragt und ein eigentlich kaputtes Objekt mit herumgeschleppt? |
AW: Wie mit dem Fehler in einer Klasse umgehen?
Könnte man, immerhin hätte eine EDogPuking-Exception auftreten können :)
|
AW: Wie mit dem Fehler in einer Klasse umgehen?
Zitat:
Zitat:
|
AW: Wie mit dem Fehler in einer Klasse umgehen?
Zitat:
Delphi-Quellcode:
Was ist daran nicht sauber und warum brauche ich hierbei Glück?
LGuteList := TObjectList.Create;
LGuteList.ownsobjects := True; LSchlechteList := TObjectList.Create; LSchlechteList.ownsobjects := True; try for a := 0 to 1000 do begin // hier irgendwie die Daten sammeln, die dem Objekt übergeben werden lFoo := TFoo.Create( irgendwelcheDaten ); if lfoo.CreateError then LSchlechteList.add(lfoo) else LGuteList.add(lfoo) end; MachJetztWasMitDerGutenList; if IchWillDieSchlechteListAuswerten and (LSchlechteList.count>0) then MachJetztWasMitDerSchlechtenList; finally LGuteList.free; LSchlechteList.free; end; |
AW: Wie mit dem Fehler in einer Klasse umgehen?
Leute, einfach keine Logik in den Konstruktor.
Wenn es eine Logik für die Eigenschaft 'bin ich gültig?' gibt, wieso sollte man das über den Konstruktor abbilden? Das ist doch... nun ... ungünstig. |
AW: Wie mit dem Fehler in einer Klasse umgehen?
So etwas wollte ich vorhin auch schreiben. Hatte es aber nicht so schön auf den Punkt gebracht.
|
AW: Wie mit dem Fehler in einer Klasse umgehen?
Zitat:
Die einzige Logik die da rein gehört ist das Validieren der Argumente und wenn da etwas nicht passt, dann werfen wir eine Exception. |
AW: Wie mit dem Fehler in einer Klasse umgehen?
Siehe auch:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz