Pertanyaan yang diberi tag «dependency-injection»

Dependency Injection, adalah pola desain di mana dependensi (instance objek, properti) dari suatu komponen diatur melalui konstruktor, metode, atau bidang (properti). Ini adalah bentuk khusus dari inversi ketergantungan yang lebih umum.

4
Pendekatan bertahap terhadap injeksi ketergantungan
Saya sedang berupaya membuat kelas saya dapat diuji unit, menggunakan injeksi ketergantungan. Tetapi beberapa dari kelas-kelas ini memiliki banyak klien, dan saya belum siap untuk refactor mereka semua untuk mulai melewati dependensi. Jadi saya mencoba melakukannya secara bertahap; menjaga dependensi default untuk saat ini, tetapi membiarkannya ditimpa untuk pengujian. Satu …


5
Bagaimana cara menggunakan injeksi ketergantungan dan menghindari pemasangan temporal?
Misalkan saya memiliki Serviceyang menerima dependensi melalui konstruktor tetapi juga perlu diinisialisasi dengan data kustom (konteks) sebelum dapat digunakan: public interface IService { void Initialize(Context context); void DoSomething(); void DoOtherThing(); } public class Service : IService { private readonly object dependency1; private readonly object dependency2; private readonly object dependency3; public …

4
Gunakan Injeksi Ketergantungan Untuk Objek Data?
Saya hanya belajar tentang injeksi ketergantungan, dan saya terjebak pada sesuatu. Dependency Injection merekomendasikan pengiriman kelas dependen melalui konstruktor, tapi saya ingin tahu apakah ini diperlukan untuk objek data. Karena Unit-Testability adalah salah satu manfaat utama DI, akankah suatu objek data, yang hanya menyimpan data, dan tidak ada prosedur yang …

1
Menggunakan Orde Resolusi Metode Python untuk Injeksi Ketergantungan - apakah ini buruk?
Saya menonton pembicaraan Pycon karya Raymond Hettinger, "Super Considered Super" dan belajar sedikit tentang Python MRO (Method Resolution Order) yang membuat linearkan kelas "induk" kelas dengan cara deterministik. Kita dapat menggunakan ini untuk keuntungan kita, seperti dalam kode di bawah ini, untuk melakukan injeksi ketergantungan. Jadi sekarang, tentu saja, saya …


5
Bisakah kita sepenuhnya mengganti warisan menggunakan pola strategi dan injeksi ketergantungan?
Sebagai contoh: var duckBehaviors = new Duckbehavior(); duckBehaviors.quackBehavior = new Quack(); duckBehaviors.flyBehavior = new FlyWithWings(); Duck mallardDuck = new Duck(DuckTypes.MallardDuck, duckBehaviors) Karena kelas Bebek berisi semua perilaku (abstrak), membuat kelas baru MallardDuck(yang meluas Duck) tampaknya tidak diperlukan. Referensi: Pola Desain Kepala Pertama, Bab 1.


1
Apa motivasi di balik anotasi @ImplementedBy di Guice?
Baru-baru ini saya membaca tentang @ImplementedByanotasi yang tersedia di Google Guice . Hal ini memungkinkan programmer untuk menentukan pengikatan antara antarmuka dan implementasinya untuk digunakan di masa depan dalam injeksi dependensi. Ini adalah contoh penjilidan just-in-time . Saya cukup terbiasa mendefinisikan binding eksplisit dalam modul saya, menggunakan sintaks berikut: bind(SomeInterface.class).to(SomeInterfaceImplementation.class); …

1
Beberapa organisasi kode aplikasi Zend
Selama setahun terakhir saya telah mengerjakan serangkaian aplikasi yang semuanya didasarkan pada kerangka kerja Zend dan berpusat pada logika bisnis yang kompleks yang semua aplikasi harus memiliki akses ke bahkan jika mereka tidak menggunakan semua (lebih mudah daripada memiliki beberapa folder perpustakaan untuk masing-masing aplikasi karena mereka semua terhubung bersama …

4
Bagaimana injeksi ketergantungan dapat diintegrasikan ke dalam bahasa? [Tutup]
Ditutup . Pertanyaan ini perlu lebih fokus . Saat ini tidak menerima jawaban. Ingin meningkatkan pertanyaan ini? Perbarui pertanyaan sehingga berfokus pada satu masalah hanya dengan mengedit posting ini . Ditutup 4 tahun yang lalu . Saya telah berpikir sedikit tentang bagaimana injeksi ketergantungan dapat lebih baik diintegrasikan secara langsung …

3
Rekomendasi untuk mengintegrasikan wadah DI / IoC ke dalam aplikasi yang ada
Saya sekarang dihadapkan dengan mengintegrasikan wadah inversi kontrol (IoC) ke dalam aplikasi yang sudah ada, dan saya sedang mencari beberapa rekomendasi tentang cara yang paling mudah dicapai dengan tujuan akhir untuk mengurangi kopling, sehingga meningkatkan testabilitas. Meskipun saya umumnya tidak akan mengklasifikasikan sebagian besar kelas sebagai objek dewa , masing-masing …


4
konteks ambient vs injeksi konstruktor
Saya sudah banyak kelas inti yang memerlukan ISessionContext dari database, ILogManager untuk log dan IService digunakan untuk berkomunikasi dengan layanan lain. Saya ingin menggunakan injeksi dependensi untuk kelas ini yang digunakan oleh semua kelas inti. Saya sudah dua kemungkinan implementasi. Kelas inti yang menerima IAmbientContext dengan semua tiga kelas atau …


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.