Einzelnen Beitrag anzeigen

SProske

Registriert seit: 16. Feb 2015
Ort: Halle/S.
116 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#1

Klassendesign - wie umgehen mit bedingten Eigenschaften?

  Alt 21. Dez 2015, 12:28
Hallo,

ich habe eine Klasse (für Exportzwecke), in der festgelegt ist, ob eine bestimmte Eigenschaft fest hinterlegt ist oder dynamisch ausgelesen werden soll. Für den Fall der festen Hinterlegung, muss natürlich noch der konkrete Wert hinterlegt sein. Im simpelsten Falle also:

Delphi-Quellcode:
  TFoo = class
  strict private
    FHasFixBar: Boolean;
    FBar: Integer;
  public
    property HasFixBar: Boolean [..];
    property Bar: Integer [..];
  end;
Solange ein fester Wert hinterlegt, ist das alles noch relativ simpel, aber was sollte im dynamischen Fall geschehen:
- Einen Defaultwert für FBar hinterlegen
- Auf Variants umsteigen und NULL hinterlegen
- TFoo hat nur die Eigenschaft HasFixBar und für den Ja-Fall gibt es eine abgeleitete Klasse, die auch Bar hinterlegt hat
- irgendeine viel, viel bessere Lösung

Ich würde Wetten, dass sich zu dieser oder zumindest einer ähnlichen Problematik, schon irgendwer mal sehr viele schlaue Gedanken gemacht hat - allein mir fehlt der Suchansatz.
Ich wäre also für Denkansätze, Links zu schlauen Gedanken, passenden Stichwörtern und einem aussagekräftigerem Threadtitel sehr dankbar.
Sebastian
  Mit Zitat antworten Zitat