Bağımlılık enjeksiyonu, nesne yönelimli programlamada (OOP) kullanılan bir tekniktir. Bu teknik, başka bir programa başvurur veya bağlanır ve orijinal programı başvurulan programa bağımlı hale getirir. Bu, programcıların orijinal programa anında işlevler veya ek özellikler eklemelerine izin verir, ancak kodlamayı daha karmaşık hale getirir ve programı yavaşlatabilecek aşırı kodlamalar ekler. Çoğu OOP programı, programcıların kod eklemek zorunda kalmadan çeşitli yüklü programlara başvurmalarına izin verir.
Bağımlılık enjeksiyonunun kullanımı çoğu programda genellikle az miktarda bulunmaktadır. Programı bağımlı kılmak için programcı, kısmen veya tamamen başka bir programa başvuran kodu yazar. Normal olarak, kurulu olan herhangi bir programa başvuru yapılabilir, ancak bazı kodlama şemaları yalnızca belirli programların referans alınmasına izin verir. Örneğin, programcı programa metin özellikleri eklemek istiyorsa, özelliği el ile yapmak yerine, bir sözcük işlem programına başvurabilir. Bunu yaparak, orijinal programın artık yeni bir özelliği var ancak bilgisayarda çalışan ve çalışan diğer programlara bağlı.
Çoğu yeni programcı elle oluşturma özellikleri yerine bağımlılık enjeksiyonunu kullanmayı tercih eder. Bunun nedeni, özelliklerin oluşturulması karmaşık olabilir ve yeni programcıların bu özelliği nasıl etkili bir şekilde yapacağını bilemeyebilirler. Bir programa atıfta bulunarak, programcının kodlamayı bilmesine gerek yoktur ve sadece birkaç kod satırı ile herhangi bir özellik eklenebilir.
Bağımlılık enjeksiyonuyla ilgili birçok sorun var, özellikle de program tüketicilere yönelikse, bu yüzden sıklıkla profesyoneller ve yazılım sağlayıcılar tarafından kullanılmaz veya kullanılmaz. Tüketici tarafında bağımlılık enjeksiyonu ile ilgili en belirgin sorunlardan biri, tüketicinin referans verilen programa sahip olmaması olasılığıdır. Program, Program A'daki bir özelliğe referans verecek şekilde yapılandırılmışsa, ancak tüketici Program A yüklü değilse, özellik veya tüm program zayıflatıcı bir hatayla karşılaşacaktır.
Birkaç programın referans aldığı yüksek bağımlılık seviyelerinde diğer problemler ortaya çıkar. Bir veya iki programa atıfta bulunmak, az miktarda kod oluşturur, ancak daha fazlasını yapmak, programı yavaşlatan aşırı kod gerektirebilir. Programda bir hata varsa, programcının, hatayı bulmak için dalması gereken çok sayıda karmaşık kodlama vardır, çünkü hata, orijinal programda değil, başvurulan programda olabilir.
Birçok yeni programcı bağımlılık enjeksiyonunu kullanır, bu yüzden çoğu OOP şeması bir programa otomatik olarak gönderme yolu sunar. Bu, programcının sadece birkaç fare tıklamasıyla referans bağlantısını yapmasını sağlar. Bir programa otomatik olarak referans vermek, genellikle referansı elle yazmaktan biraz daha fazla kodlama ekler, ancak programcı yeni olduğu ve programın tüketicilere gitmeyeceği için, bu ciddi bir sorun yaratmamalıdır.


