module
- Kotlin kursu
- İleri seviye
- Ders 38/83
- 5 dk
module { } ile modül tanımlamayı öğrenirsin.
module bloğu
Bir module, Koin'de bağımlılıkların tanımlandığı bloktur. module { ... } çağrısı ile oluşturulur.
Örnek: val appModule = module { single { Repository() } }. Bu modül Repository sınıfını tek örnek olarak sağlar. Modüller genellikle bir val'e atanır ve startKoin { modules(appModule) } ile bağlanır. Bir modül içinde birden fazla bağımlık tanımlanabilir. Modüller, uygulamanın bölümlerine göre ayrılabilir; örn. ağ modülü, veritabanı modülü.
Modül yapısı
Bir modül içinde her bağımlılık bir single ya da factory bloğu ile tanımlanır. Bağımlılıklar arasında başvuru doğrudan yapılabilir.
Örnek: module { single { Repository() }; single { Service(get()) } }. Burada Service, Repository'yi get() ile alır. get() Koin'e ilgili türü sorar. Modüller birbirinden bağımsız parçalar halinde yazılabilir. startKoin çağrısında birden fazla modül verilebilir; Koin hepsini birleştirir.
Uygulama appModule tanımla
val appModule = module { } tanımla. main içinde println("Modül hazır") yazdır.
Başlangıç kodu
// module
// buraya yaz
import org.koin.dsl.module
fun main() {
}Örnek çözüm
val appModule = module {
}
fun main() {
println("Modül hazır")
}Beklenen çıktı
Modül hazır
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 module çağrısını tamamla
val appModule = ____ {
single { Repository() }
}
val appModule = module {
single { Repository() }
}
Açıklama: module ile bağımlılık bloğu açılır.
2 module parçalarını eşle
| Kavram | Anlamı |
|---|---|
module |
Bağımlılık bloğu |
single |
Tek örnek |
factory |
Her seferinde yeni |
get |
Başka bağımlılık |
3 Modül içinde başka bir bağımlılığı almak için ne kullanılır?
- fetch()
- get() Doğru cevap
- find()
- load()
Açıklama: get() ile başka bağımlılık alınır.