Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03271.jsonl.gz/361

- Q: Ich frage mich wie man korrekt ein Facade Pattern implementiert. Wenn ich zum Beispiel eine DBFacade implementieren will, dann müsste diese Klasse doch ein Singleton sein. Es würde doch wenig Sinn machen mehr als eine Instanz einer Facade zu haben. Ich habe aber sehr oft gehört, dass man Singletons meiden sollte, weil sie global sind und eine hohe Kopplung verursachen. Ich frage mich einfach wie so etwas in der Praxis gelöst wird.
- A: Singleton heisst: Es gibt nur eine Instanz und auf die Instanz kann global zugegriffen werden. Tatsächlich sollte es von einer Facade zu einem Subsystem nur eine Instanz geben. Das kann ich aber auch erreichen, wenn ich im Initialisierungscode die Facade einmal instanziere und sie dann gezielt den Subsystemen mitgebe, welche den Zugriff auf die Facade haben müssen. Eine oft verwendete Methode ist die Verwendung von Dependency Injection Frameworks. Die Facade wird durch Dependency Injection an den Stellen iniiziert, welche die Facade zugreifen müssen. Dependency Injection Frameworks stellen zum Teil auch sicher, dass es nur eine Instanz gibt. Hans Rudin, 11.1.2015
- Q: Fragen zu Use Cases und Autoren?
- A: Siehe http:files/UseCases.pdf. Meine Antworten in kleinerem Font. Hans Rudin, 1.9.2014
Für die Benützung des Wikis siehe WelcomeVisitors
.
Ein RSS-Feed ist über http:rss.cgi erreichbar (bzw. wird im Firefox rechts unten zum Bookmarken angeboten.)