Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Guter Stil oder 'Wie programmiere ich vernünftig?' (https://www.delphipraxis.net/67715-guter-stil-oder-wie-programmiere-ich-vernuenftig.html)

Lemmy1 19. Apr 2006 00:25

Re: Guter Stil oder 'Wie programmiere ich vernünftig?'
 
Übrigens: Zum Thema "guter" Stil gehört auch, nicht JEDE Exception abzufangen, sondern nur spezifisch die, die Du abfangen willst. Dann kann man auch meist das try...except...end weiter nach aussen schieben und für die gesamte Funktion auf einmal durchführen...

Böße:
Delphi-Quellcode:
try
  ... some code that goes wrong all the time ...
except
  ... handle here
end;
Gut:
Delphi-Quellcode:
try
  ... some code that goes wrong all the time ...
except
  on E: FileNotFoundException do
  begin
    ... handle here
  end
end;
Man sollte sich auch immer überlegen, welche Exceptions man abfangen sollte. Eine ArgumentNullException ist zum Beispiel immer ein Programmierfehler, die in keinen try-except Block gehört. Eine FileNotFoundException hingegen könnte auf Fehlerhafte Config etc hindeuten, also gehört die da rein. In Java werden diese beiden Typen von Exceptions sehr schön getrennt. Die zweite (FileNotFoundException, ComputerTurnedOffException etc) Kategorie MUSS man dann sogar abfangen.

Lemmy1 19. Apr 2006 00:26

Re: Guter Stil oder 'Wie programmiere ich vernünftig?'
 
Zitat:

Zitat von TPok
Alles klar. Auf den Blick in die Borland.Delphi.System hätte ich auch kommen können. Das heißt also, wenn das Objekt IDisposable nicht implementiert, ist ein Free überflüssig. Ansonsten sollte man es aufrufen. So dachte ich mir das auch.

Ich werde mich mal an die Umstrukturierung meines Queltextes machen. Bei neuen Frage, melde ich mich bestimmt wieder.

Bis dahin,
Stephan

Denk aber dran, dass Delphi.Net "destructor Destroy; override" automatisch in IDisposable konvertiert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:22 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz