Ich habe mehr über das Inversion-of-Control-Prinzip und Dependency-Injection als dessen Implementierung gelesen und bin mir ziemlich sicher, dass ich es verstehe.
Es scheint im Grunde genommen zu heißen, dass Sie Ihre Klassenmitglieder nicht als Instanziierungen innerhalb der Klasse deklarieren. Vielmehr sollten die Instantiierungen über den Konstruktor übergeben und zugewiesen werden. "injiziert" in die Klasse von einer externen Quelle.
Wenn es so einfach ist, wie es scheint, warum brauchen wir Frameworks wie spring oder guice, die dies mit Anmerkungen implementieren? Fehlt mir hier etwas Grundsätzliches? Ich habe wirklich Probleme zu verstehen, was die Verwendung von Dependency Injection-Frameworks ist.
Bearbeiten: Über das mögliche Duplikat, ich glaube, meine Frage ist einzigartiger, da es sich um DI-Frameworks im Allgemeinen handelt, nicht nur um Spring. Spring ist nicht nur ein DI-Framework, daher gibt es viele Gründe, warum jemand Spring verwenden möchte, der nicht mit DI verwandt ist.