Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#13

Re: Code strukturieren! Wie macht man es richtig ..

  Alt 10. Okt 2008, 09:31
Bei einer Property hast Du mehrere Möglichkeiten:
Delphi-Quellcode:
private
  FBlubb: TBlubb;
...
public
  property Blubb: TBlubb read FBlubb write FBlubb;
Die einfachste: indirekter Zugriff auf das private Feld FBlubb sowohl lesend als auch schreibend.

Delphi-Quellcode:
private
  FBlubb: TBlubb;
  procedure SetBlubb(const Value: TBlubb);
...
public
  property Blubb: TBlubb read FBlubb write SetBlubb;
Lesender Zugriff immer noch indirekt, schreibender über einen Setter. Im Setter kann man Gültigkeitsprüfungen vornehmen und entsprechend reagieren.

Delphi-Quellcode:
private
  FBlubb: TBlubb;
  function GetBlubb: TBlubb;
  procedure SetBlubb(const Value: TBlubb);
...
public
  property Blubb: TBlubb read GetBlubb write SetBlubb;
Lesender Zugriff über den Getter, schreibender über den Setter. Im Sinne der OOP ist dies der "amtliche" Weg (gerade in der Hinsicht auf andere Sprachen als Delphi). Ich persönlich spare mir eine Getter-Methode aus Faulheitsgründen, da sie IMO keinen echten Mehrwert bringt.

[edit] Nachtrag: durch Weglassen von write bzw. read kannst Du eine Property zusätzlich noch als Read-/Write-Only definieren [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat