Delphi-PRAXiS
Seite 46 von 53   « Erste     36444546 4748     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Klatsch und Tratsch (https://www.delphipraxis.net/34-klatsch-und-tratsch/)
-   -   Eure besten Quellcode Kommentare... (https://www.delphipraxis.net/96226-eure-besten-quellcode-kommentare.html)

Codehunter 5. Mär 2019 19:46

AW: Eure besten Quellcode Kommentare...
 
Da liegt das Problem aber in der Implementierung des Setters:

Zitat:

Zitat von MaBuSE (Beitrag 1426974)
Delphi-Quellcode:
procedure TFDFix.SetActive(const Value: Boolean);
begin
  if Value = FActive then
    WriteLn('Erwarte das Unerwartete ;)') // In dieser Zeile könnte z.B. etwas wichtiges gemacht werden, was einen Fehler verhindert.
  else
    FActive := Value;
end;

begin
  try
    WriteLn('Start');
    FDFix := TFDFix.Create;
    try
      (* ... *)
    finally
      WriteLn('Ende');
      FDFix.Free;
    end;
    ReadLn;
  except
    on E: Exception do
      WriteLn(E.ClassName, ': ', E.Message);
  end;

end.

Das sollte man eigentlich immer so machen, um derlei Probleme zu vermeiden:

Delphi-Quellcode:
procedure TFDFix.SetActive(const Value: Boolean);
begin
  if Value = FActive then
    Exit
  else
  begin
    FActive := Value;
  try
    WriteLn('Start');
    FDFix := TFDFix.Create;
    try
      (* ... *)
    finally
      WriteLn('Ende');
      FDFix.Free;
    end;
    ReadLn;
  except
    on E: Exception do
      WriteLn(E.ClassName, ': ', E.Message);
  end;
  end;
end.
(Hier im Browser editiert, daher bitte die Einrückungen dazu denken)

MaBuSE 6. Mär 2019 14:47

AW: Eure besten Quellcode Kommentare...
 
Zitat:

Zitat von Codehunter (Beitrag 1427010)
Delphi-Quellcode:
procedure TFDFix.SetActive(const Value: Boolean);
begin
  if Value = FActive then
    Exit
  else
  begin
    FActive := Value;
    // ...
  end;
end;

dann bitte aber so:
Delphi-Quellcode:
procedure TFDFix.SetActive(const Value: Boolean);
begin
  if Value <> FActive then
  begin
    FActive := Value;
    // ...
  end;
end;
Borland/CodeGear/Embarcadero machen das auch so:
Ein schönes Beispiel ist TMargins und TPadding:
Delphi-Quellcode:
 // Quelltext gekürzt !!!

  TMarginSize = 0..MaxInt;

  TMargins = class(TPersistent)
  private
    FLeft, FTop, FRight, FBottom: TMarginSize;
    procedure SetMargin(Index: Integer; Value: TMarginSize);
  protected
    procedure Change; virtual;
  published
    property Left: TMarginSize  index 0 read FLeft  write SetMargin default 3;
    property Top: TMarginSize   index 1 read FTop   write SetMargin default 3;
    property Right: TMarginSize index 2 read FRight write SetMargin default 3;
    property Bottom: TMarginSize index 3 read FBottom write SetMargin default 3;
  end;

  TPadding = class(TMargins)
  published
    property Left  default 0;
    property Top   default 0;
    property Right default 0;
    property Bottom default 0;
  end;

procedure TMargins.SetMargin(Index: Integer; Value: TMarginSize);
begin
  case Index of
    0:if Value <> FLeft then
      begin
        FLeft := Value;
        Change;
      end;
    1:if Value <> FTop then
      begin
        FTop := Value;
        Change;
      end;
    2:if Value <> FRight then
      begin
        FRight := Value;
        Change;
      end;
    3:if Value <> FBottom then
      begin
        FBottom := Value;
        Change;
      end;
  end;
end;

ConnorMcLeod 2. Jul 2019 09:25

AW: Eure besten Quellcode Kommentare...
 
Delphi-Quellcode:
  try
    [... code hier ...]
  except
    // ist mir sowas von egal
  end;

Sherlock 2. Jul 2019 09:31

AW: Eure besten Quellcode Kommentare...
 
Delphi-Quellcode:
  try
[... code zum schreiben in eine Log Datei...]
  except
    // Well, what should we do? What is best practice here?
  end;
¯\_(ツ)_/¯

Sherlock

Codehunter 2. Jul 2019 10:47

AW: Eure besten Quellcode Kommentare...
 
Jetzt nicht direkt Quelltext-Kommentar, aber dennoch einen Platz in dieser Hall of Shame wert: Microsoft
Zitat:

Wenn Sie die Audioverbesserungen deaktivieren, kann dies die Soundqualität verbessern.
Demnach müsste man ja nur ständig Bleifuß fahren, um besonders sparsam unterwegs zu sein. Geile Sache das... :lol:

TiGü 10. Okt 2019 11:40

AW: Eure besten Quellcode Kommentare...
 
Neue Firma, neuer Quelltext - zwar kein Kommentar, aber ich bin gerade drüber gestolpert und wollte es euch nicht vorenthalten.
Da kommt einiges zusammen. :shock:

Delphi-Quellcode:
property ThresholdHyst :Double read FThresholdHyst write GetTresholdHyst;

haentschman 10. Okt 2019 11:51

AW: Eure besten Quellcode Kommentare...
 
böse...:shock:

dummzeuch 10. Okt 2019 11:57

AW: Eure besten Quellcode Kommentare...
 
Zitat:

Zitat von TiGü (Beitrag 1449424)
Neue Firma, neuer Quelltext - zwar kein Kommentar, aber ich bin gerade drüber gestolpert und wollte es euch nicht vorenthalten.
Da kommt einiges zusammen. :shock:

Delphi-Quellcode:
property ThresholdHyst :Double read FThresholdHyst write GetTresholdHyst;

Den verstehe ich jetzt nicht: Vermutlich ist das Threshold Hysterese

Was ist daran lustig? (ernstgemeinte Frage)

Ich sehe nur einen Tippfehler: GetTresholdHyst -> GetThresholdHyst

Ok, jetzt hab' ich's auch. Der hat gedauert.

Codehunter 10. Okt 2019 11:59

AW: Eure besten Quellcode Kommentare...
 
Genau, ich rätsele auch noch über den Witz :gruebel:

EDIT: Jetzt hab ichs verstanden :-D

Der schöne Günther 10. Okt 2019 12:01

AW: Eure besten Quellcode Kommentare...
 
write GetTresholdHyst

Wobei die Signatur ja stimmen muss bei den Methoden. Vielleicht wirklich nur ein Tippfehler.


Und ich bleibe dabei, Delphi-Properties haben keinen Zweck, sie sind nur Fehlerquelle und machen das Leben unnötig schwer.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 Uhr.
Seite 46 von 53   « Erste     36444546 4748     Letzte »    

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 by Thomas Breitkreuz