Saya sangat tidak setuju bahwa itu meningkatkan kopling.
Tanpa injeksi ketergantungan Anda memiliki kopling ketat antara sub sistem dan implementasi dependensi yang konkret.
Dengan injeksi dependensi Anda telah memisahkan sub sistem dari implementasi dependensi.
Membuat argumen bahwa itu meningkatkan kopling antara konsumen dan sub sistem ini SANGAT dipertanyakan karena menyiratkan bahwa konsumen sekarang sangat erat dengan ketergantungan yang diperlukan oleh sub sistem. Maksudnya adalah Anda menulis kode yang dipasangkan dengan ketat yang menyatukan konsumen Anda dengan ketergantungan. Idealnya SEMUA kode Anda dipisahkan.
Injeksi Konstruktor:
Resolusi ketergantungan ditangani oleh wadah injeksi ketergantungan atau pabrik. Konsumen bisa mendapatkan implementasi nyata dari sistem sub dari wadah injeksi ketergantungan atau pabrik.
Konsumen tidak perlu tahu seperti apa konstruktor dari sub sistem itu. Tidak ada sambungan ke ketergantungan sub sistem.
Metode Injeksi:
Sama seperti injeksi konstruktor kecuali bahwa sekarang konsumen perlu mendapatkan contoh nyata ketergantungan dari wadah atau pabrik (atau bahkan menyuntikkan metode / konstruktor) dan menyuntikkannya ke dalam metode. Sekali lagi, konsumen tidak digabungkan dengan implementasi konkret dari ketergantungan.
TL; DR
Kasus terburuk untuk injeksi ketergantungan dalam sub sistem adalah bahwa kopling dialihkan ke kode konsumen. TIDAK ADA PENINGKATAN SECARA KESELURUHAN DALAM COUPLING.
Kasus terbaik adalah bahwa semua sistem sekarang longgar digabungkan dan injeksi ketergantungan dikontrol melalui wadah atau pabrik injeksi ketergantungan.