Eine Abstract Factory hast du doch auch mit
IFillConcreteData
.
Wenn du dort nun noch Methoden einführst, die eine Instanz erschaffen
Delphi-Quellcode:
IFillConcreteData = interface
function BuildPDF( AData: TConcreteData ): IPDFDocument;
function BuildXLS( AData: TConcreteData ): IXLSDocument;
end;
dann hast du deine Factory. Die konkreten Factories erzeugen dann die entsprechende Formular-Version.
Der Container davor sammelt nur die ganzen Factories und gibt dir die gewünschte zurück.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)