Ich habe eine Klasse, die bereits zwei Konstruktoren besitzt. Nun entsteht eine weitere Methode, die auf eine dritte Weise ein Objekt (mit einer anhängenden baumartigen Struktur aus gleichen Objekten) erzeugt, das dann als Wurzelelement des Baums dient.
In C# oder C++ würde ich das mit verschiedenen statischen Funktionen machen.
Ist es in Delphi angebracht, alles als Konstruktoren zu erzeugen:
Delphi-Quellcode:
constructor Create(vorgaenger: TKlasse); overload; // Bearbeitungsmodus
constructor Create(wert1, wert2, wert3: TTyp); overload; // Erstellen aus vorhandenen Daten
constructor Create(ID: Integer); overload; // Einlesen aus Datenbank, Erstellen Baum
Alternative:
Delphi-Quellcode:
class function CreateFromValues(wert1, wert2, wert3: TTyp): TKlasse;
class function CreateFromDB(ID: Integer): TKlasse;
Oder ist es eher eine Frage des persönlichen Geschmacks?