Forum: Algorithmen, Datenstrukturen und Klassendesign
by sx2008,
5. Aug 2012
Bin durch Zufall auf diesen Artikel gestosen:
Don’t call the container; it’ll call you!
Darin wird empfohlen und begründet nicht den Service Locator aufzurufen, sondern über den Konstruktor eine Abstract Factory zu übergeben.
Forum: Algorithmen, Datenstrukturen und Klassendesign
by sx2008,
1. Aug 2012
Du brauchst hier eine Fabrikmethode oder eine Factory.
// Fabrikmethode
// darf auch virtuell sein, damit man die implementierende Klasse von IUser
// ändern kann
function TUserFinder.CreateUser(UserID:Integer):IUser;
begin
Result := TUser.Create(UserID);
end;
function TUserFinder.Find(const Username: string): IList<IUser>;