Junior — Middle
Bağımlılık Enjeksiyonu için Dagger kullanımı SOLID ilkelerinden hangisine aittir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Dagger kullanımı, bağımlılık enjeksiyonu için SOLID ilkelerinden Bağımlılıkların Ters Çevirisi İlkesi (D) ile ilgilidir.
Bu ilke şunu söyler:
- Üst düzey modüller, alt düzey modüllere doğrudan bağlı olmamalıdır.
- Her ikisi de soyutlamalara bağlı olmalıdır.
- Soyutlamalar, detaylara bağlı olmamalıdır; detaylar, soyutlamalara bağlı olmalıdır.
Dagger, bu ilkeyi uygulamaya yardımcı olur ve soyutlamalar (arayüzler veya soyut sınıflar) aracılığıyla bağımlılıkların otomatik enjeksiyonu için bir mekanizma sağlar, bu da bileşenlerin bağlılığını azaltır ve kodun test edilebilirliğini ve esnekliğini artırır.
Dagger kullanım örneği:
@Component
interface AppComponent {
void inject(MyActivity activity);
}
class MyActivity {
@Inject
MyRepository repository;
void onCreate() {
DaggerAppComponent.create().inject(this);
repository.loadData();
}
}
Burada, MyActivity doğrudan MyRepository oluşturmaz, bunun yerine bağımlılık enjeksiyonu yoluyla alır, bu da Bağımlılıkların Ters Çevirisi ilkesine uygundur.