CodeBlanks Logo Icon CodeBlanks

Koin

Koin DI çerçevesini öğrenirsin.

Koin nedir?

Koin, Kotlin için hafif bir bağımlılık enjeksiyonu (DI) kütüphanesidir. Kotlin DSL ile yazılır; reflection kullanmaz, derleme zamanı tür güvenliği sunar.

Bir uygulama startKoin { modules(appModule) } çağrısı ile başlatılır. Modüller module { ... } bloğu ile tanımlanır; bağımlılıklar single ya da factory ile verilir. Sınıflar bağımlılıklarını by inject() ile alır. Koin, Dagger gibi annotation processor gerektirmez; kurulumu basittir. Bu derste temel başlatma akışını kuracaksın.

Koin başlatma

Koin'i başlatmak için startKoin { modules(appModule) } çağrısı yapılır. Bu çağrı bir KoinApplication oluşturur.

Örnek: startKoin { modules(appModule) }. Burada modules fonksiyonu uygulamanın kullanacağı modülleri listeler. Birden fazla modül verilebilir: modules(module1, module2). startKoin çağrısı uygulamanın başında bir kez yapılır; Android'de Application.onCreate içinde yaygındır. Koin başlatılmadan by inject() çalışmaz.

Uygulama Koin'i başlat ve yazdır

startKoin { } bloğu aç. println("Koin hazır") yazdır.

Başlangıç kodu

Main.kt
// Koin
// buraya yaz
import org.koin.core.context.startKoin

fun main() {
    
}

Örnek çözüm

Main.kt
fun main() {
    startKoin {
    }
    println("Koin hazır")
}

Beklenen çıktı

Koin hazır

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Koin hangi amaçla kullanılır?

  • Bağımlılık enjeksiyonu için Doğru cevap
  • JSON serileştirmek için
  • HTTP isteği atmak için
  • Veritabanı yönetimi için

Açıklama: Koin bağımlılık enjeksiyonu (DI) kütüphanesidir.

2 startKoin çağrısını tamamla

Soru
____ {
    modules(appModule)
}
Cevap
startKoin {
    modules(appModule)
}

Açıklama: startKoin ile Koin uygulaması açılır.

3 Koin parçalarını eşle

Kavram Anlamı
startKoin Başlatma
module Modül bloğu
single Tek örnek
by inject Bağımlılık alır

İleri seviye bölümündeki tüm dersler