Angenommen, ich möchte ein Dependency-Injection-Framework in einem AOP-Ansatz verwenden, mit dem Ziel, Codemodule zu erstellen. Was ist die Best Practice für den Besitz der geteilten Schnittstellen? Unter Besitz verstehe ich den Code, der referenziert werden muss, um die Schnittstelle zu verwenden.Dependency Injection - Wem gehört die Schnittstelle?
Meine erste Vermutung ist, dass Sie in AOP eine Klassenbibliothek von Schnittstellen definieren würden, die nach aspect benannt sind. zB: company.aspect.logging.ILogger. Jedes Modul würde dann auf diese Bibliothek verweisen und vermeiden, dass irgendein Code, der bei der Implementierung von ILogger involviert ist, auch ILogger definiert.
Best Practices?
Das ist genau was ich tun würde (mit Schnittstellen in separaten Klasse, die nur Schnittstellen hält). – Tomas