Einzelnen Beitrag anzeigen

tigerman33

Registriert seit: 30. Jul 2005
Ort: München
423 Beiträge
 
Delphi 2005 Professional
 
#10

Re: Unterschied bei Aufruf von Variablen in eigener Komponen

  Alt 29. Nov 2005, 12:31
Hallo,

ich versuche meist zu vermeiden, pointer von innerhalb des Objekts nach außen sichtbar zu machen. Das birgt immer das Risiko, dass damit Dinge angestellt werden, für die sie nicht gedacht waren (z.B. Speicherfreigabe). Wenn dann deine Komponente später versucht, mit dem pointer zu hantieren, oder erwartet, dass eine gewisse Bedingung erfüllt ist, kann das schwer zu lokalisierende Fehler haben. Wenn du möchtest, dass sich die Eigenschaften deiner Komponente ändern, ist es i.A. sinnvoller, auch direkt mit der Komponente zu arbeiten (da kommen dann wieder die angesprochenen Settermethoden zum Einsatz).
Ausgenommen hiervon behandel ich aber Klassen. Bei diesen lässt es sich meist nicht vermeiden, und ggf kann die Klasse ja auch ihre übergeordnete Klasse von den geschehenen Veränderungen in Kenntnis setzen.

Innerhalb der Klasse vermeide ich es außerdem (außer in Constructor, Destructor, Getter und Setter) direkt auf das Feld zuzugreifen. Denn sollte ich für eine Eigenschaft später einen Setter/Getter implementieren, dann muss ich nicht den Code durchforsten und alle direkten Feldzugriffe abändern. Dadurch dass ich die ganze Zeit nur mit der property gearbeitet habe, wird "automatisch" der richtige Code ausgeführt.

PS:
(0 >= n >= 14)
Das könnte schwierig werden...
Christian
Der Computer hilft mir, Probleme zu lösen, die ich ohne Computer nicht hätte.
  Mit Zitat antworten Zitat