Einzelnen Beitrag anzeigen

Turtle85

Registriert seit: 23. Mai 2019
4 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#1

Factory Pattern

  Alt 23. Mai 2019, 08:58
Aloah...

ich habe mich in letzter Zeit ein wenig mit den verschiedenen Software Pattern beschäftigt. Unter anderem auch mit dem Factory Pattern. Im Internet habe ich hierzu mehrere Beispiele und Erklärungen gefunden. Anhand dieser Beispiele unter Erklärungen habe ich versucht ein eigenes Beispiel zu programmieren.

Mich würde nun Interessieren ob in meinem Beispiel das Factory Pattern korrekt umgesetzt ist (oder auch nicht) und ob Verbesserungen vorgenommen werden müssten.

Nach meinem Verständnis geht es beim Factory Pattern ja darum, dass der Client (in meinem Fall soll dies die Klasse TAppStore sein) keine Ahnung von dem Konkreten Produkt (TSoftwareApp und deren Ableitungen) hat mit dem er arbeiten soll. Das Konkrete Produkt bekommt er ja über eine Subklasse (in meinem Fall die Klassen TOfficeApps / TAppleApps) erstellt/mitgeteilt, die für Ihn das konkrete Produkt erstellt.

Die Klassenstruktur habe ich als Anhang diesem Post hinzugefügt.


Anbei noch eine beispielhafte implementierung:

Delphi-Quellcode:
procedure TfrmPattern.DoFactoryPattern;
var
  SL : TStringList;
  Store : TAppStore;
begin
  SL := TStringList.Create;
  try
    Store := TAppStore.Create(astMicrosoft);
    try
      try
        Store.BuySoftwareApp(atText, SL);
      except
        on E:Exception do
          MessageDlg(E.Message, mtError, [mbOk], 0);
      end;
      try
      Store.BuySoftwareApp(atPresentation, SL);
      except
        on E:Exception do
          MessageDlg(E.Message, mtError, [mbOk], 0);
      end;
    finally
      Store.Free;
    end;
    ShowMessage(SL.Text);
  finally
    SL.Free;
  end;
end;

Wie bereits erwähnt würde micht Eure Meinung zur Art und Weise meiner Umsetzung interessieren...
Angehängte Dateien
Dateityp: pas FactoryPattern.pas (7,6 KB, 9x aufgerufen)
  Mit Zitat antworten Zitat