DI ist die Art und Weise, wie reale Objekte tatsächlich miteinander interagieren, ohne dass ein Objekt für die Existenz eines anderen Objekts verantwortlich ist. Objekte sollten gleichberechtigt behandelt werden. Sie sind alle Objekte. Keiner sollte sich wie ein Schöpfer verhalten. So wird man seinen Objekten gerecht.
Einfaches Beispiel :
Wenn Sie einen Arzt brauchen, suchen Sie sich einfach einen (vorhandenen) Arzt. Sie werden nicht daran denken, einen Arzt aus dem Nichts zu erschaffen, um Ihnen zu helfen. Er existiert bereits, und er kann Ihnen oder anderen Objekten dienen. Er hat das Recht zu existieren, ob Sie (ein einzelnes Objekt) ihn brauchen oder nicht, denn sein Zweck ist es, einem oder mehreren Objekten zu dienen. Wer über seine Existenz entschieden hat, ist der allmächtige Gott, nicht die natürliche Auslese. Ein Vorteil der DI besteht also darin, dass keine nutzlosen, überflüssigen Objekte geschaffen werden, die während der Lebensdauer Ihres Universums (d. h. der Anwendung) ohne Zweck leben.
0 Stimmen
Siehe meine Diskussion über Dependency Injection Hier .
44 Stimmen
Ich stimme den Kommentaren zu den Links zu. Ich kann verstehen, dass Sie vielleicht auf jemand anderen verweisen wollen. Aber fügen Sie zumindest hinzu, warum Sie sie verlinken und was diesen Link besser macht als die anderen Links, die ich mit Google finden könnte
0 Stimmen
@AR: Technisch gesehen, ist Dependency Injection no eine besondere Form von IoC. Vielmehr ist IoC eine Technik, die zur Bereitstellung von Dependency Injection verwendet wird. Es können auch andere Techniken für die Dependency Injection verwendet werden (obwohl IoC die einzige ist, die häufig verwendet wird), und IoC wird auch für viele andere Probleme verwendet.
157 Stimmen
Was die Links betrifft, so ist zu bedenken, dass sie oft auf die eine oder andere Weise verschwinden. Die Zahl der toten Links in SO-Antworten steigt. Egal, wie gut der verlinkte Artikel ist, er nützt nichts, wenn man ihn nicht finden kann.
0 Stimmen
Vojta Jina über Dependency Injection youtu.be/_OGGsf1ZXMs . Der erste Teil.
0 Stimmen
Ein Überblick über Dependency Injection und ihre Beziehung zu anderen OOP-Prinzipien: deviq.com/dependency-injection
0 Stimmen
Hier ist ein Anwendungsbeispiel ohne DI: tugay.biz/2017/05/standalone-jpa-beispiel-mit-hibernate.html und dasselbe mit DI: tugay.biz/2017/05/add-c3p0-to-previous-example.html