Moinsen,
hier auf Arbeit geht es gerade um die Frage, ob ich innerhalb "meiner eigenen" Klasse auf meine eigenen Felder direkt zugreifen darf oder dies auch dort über die zur Verfügung stehenden Properties tun sollte. Folgendes Beispiel soll das verdeutlichen; die Methode "DoSomething" ist hier von Interesse:
Delphi-Quellcode:
type
TSomeClass = class(TObject)
private
FData: String;
function GetData: String;
procedure SetData(const Value: String);
public
procedure DoSomething;
property Data: String read GetData write SetData;
end;
{ TSomeClass }
function TSomeClass.GetData: String;
begin
Result := FData;
end;
procedure TSomeClass.SetData(const Value: String);
begin
FData := Value;
end;
procedure TSomeClass.DoSomething;
begin
FData := 'Hello';
// versus
Data := 'Hello';
end;
Zwar ist die Antwort wohl, wie so oft, "es kommt darauf an", mir selber beantworte ich die Frage allerdings sehr eindeutig. Mein Kollege sieht das allerdings gänzlich anders. Und da möchte ich das einfach mal so in die Runde werfen um für meine Position (welche dasist verrate ich nicht...) noch einige Argumente zu finden