Noch eine kleine Überlegung zu Properties...
Es wäre m.E. sehr hilfreich und der Übersichtlichkeit dienlich, wenn man die Getter und Setter im Interface nicht komplett definieren müsste:
Delphi-Quellcode:
IFlieg = interface
['{0E839812-DAB3-47F0-AF3E-AB05FFDD6CE6}']
procedure Flieg;
// function get_X: Integer;
// procedure set_X(Value: Integer);
property X: Integer read write; // read get_X write set_X;
end;
TVogel = class(TInterfacedObject, IFlieg)
private
fX: Integer;
function get_X: Integer;
procedure set_X(Value: Integer);
public
procedure Flieg;
property X: Integer read get_X write set_X;
end;
Dann würde im Interface nur vorgegeben, DASS es eine Property mit Getter und/oder Setter geben muss und in der Klasse werden die Details geregelt.
Die Funktionalität der Interfaces müsste ja nicht verändert werden. Lediglich der Parser müsste das Konstrukt akzeptieren und der Compiler daraus alles ganz normal wie gehabt zusammenbauen.
Ich würde dies für eine nützliche Vereinfachung halten.
PS: Eine ShortKey für das Vervollständigen eines Klassenrumpfes mit den notwendigen Interface-Methoden gibt es nicht oder? (Ich meine: Taste drücken und der Klasse werden alle fehlenden Methoden der verwendeten Interfaces eingebaut)