Projekte mit durchsuchbaren Quelle Dependency Injection w / guice?
-
19-08-2019 - |
Frage
ich oft über Dependency Injection gelesen und ich habe Forschung auf Google und ich verstehe, was in der Theorie kann es tun und wie es funktioniert, aber ich möchte eine tatsächliche Code-Basis sehen, indem es (Java / guice würde bevorzugt) .
Kann mich jemand deuten auf ein Open-Source-Projekt, wo ich sehen kann, wie es wirklich genutzt? Ich denke, den Code browsen und die gesamte Einrichtung zu sehen, zeigt mir mehr als die ususal Schnipsel in der Einleitung Artikel, die Sie rund um das Web zu finden. Vielen Dank im Voraus!
Lösung
Ich verstehe Sie in Java-Land sind, aber in der .NET-Raum sind die mehrere Open-Source-Anwendungen unter Verwendung einer Inversion of Control Container geschrieben. Schauen Sie sich CodeCampServer , in dem das UI-Modul nicht einen Verweis auf die Auflösung von Abhängigkeiten hat Modul. Es ist ein Httpmodule, die die Arbeit der Fall ist. (Ein Httpmodule ist nur eine externe Bibliothek Sie anschließen können, dass Ereignisse in ASP.NET behandelt, in CodeCampServer die UI-Projekt lädt diese DependencyRegistrarModule zur Laufzeit, ohne Kompilierung Hinweis auf sie.)
Andere Tipps
Das Wave-Protokoll Server ist mein Lieblingsbeispiel App.
ich kämpfte ein wenig mit genau diesem Thema. Es ist so abstrakt und einfach Ich war immer besorgt war ich „tue es falsch“.
Ich habe es in dem Hauptprojekt wurde verwendet, die Abhängigkeiten von anderen Projekten hat, weil das Guice-Modul, das die Bindungen setzt Teil des Hauptprojektes war.
Ich stellte schließlich die Bibliotheken die Module liefern selbst werden sollen. An diesem Punkt können Sie nur auf eine Instanz eines Moduls abhängen (kein spezifisches) und die Schnittstellen, die daran gebunden sind.