Delphi's New Feature Desired: Smart Properties declaration for Interfaces
Delphi's New Feature Desired: Smart Properties declaration for Interfaces Currently, properties in interfaces are implemented like below: IRecyclable = interface function GetIsRecyclable : Boolean; property IsRecyclable : Boolean read GetIsRecyclable; // read-only property end; The ugly thing is that the interface should not know how its properties will are implemented by the classes, giving more freedom for the classes that will implement it. The new model could be something like this: IRecyclable = interface property IsRecyclable : Boolean; read; // read-only property end; or IRecyclable = interface property IsRecyclable : Boolean read; // read-only property end; Thus the classes could implement that interface as usual: TCar = class(TInterfacedObject, IRecyclable) private function GetIsRecyclable : Boolean; public constructor Create(recyclable : Boolean); property IsRecyclable : Boolean read GetIsRecyclable; end; How the c...