Der Vorteil es nicht
nur als viele globale Variablen zu machen, ist der, daß man sich
später problemlos da überall reinhängen kann, ohne daß am Aufrufenden Code etwas geändert werden muß.
Das reicht schon vollkommen.
Delphi-Quellcode:
type
Global = class abstract
private class var
FUserID : Integer;
FUserRoleID : Integer;
FUsername : string;
public
class property UserID : Integer read FUserID write FUserID;
class property UserRoleID : Integer read FUserRoleID write FUserRoleID;
class property Username : string read FUsername write FUsername;
end;
Getter und Setter läßt sich nachträglich einfügen und schon kann man Code für eine Werte-Kontrolle der Felder integrieren, oder ein Logging oder oder oder...
Und viel mehr Aufwand ist es auch nicht.
Delphi-Quellcode:
type
Global = class abstract
class property UserID : Integer;
class property UserRoleID : Integer;
class property Username : string;
end;
Nun nur noch Strg+Alt+C (Klassenvervollständigung) und fertig isses.
OK, abgesehn von dem BUG, welcher hier grade auftritt.
Denn so sollte das Ergebnis der Klassenvervollständigung wirklich nicht aussehn.
Delphi-Quellcode:
Global = class abstract
class property UserID : Integer read FUserID write SetUserID;
class property UserRoleID : Integer read FUserRoleID write SetUserRoleID;
class property Username : string read FUsername write SetUsername;
private
FUserID: Integer;
private
class var FUserRoleID: Integer;
private
class var FUsername: string;
private
private
private
procedure SetUserID(const Value: Integer);
class procedure SetUsername(const Value: string); static;
class procedure SetUserRoleID(const Value: Integer); static;
end;