CodeBlanks Logo Icon CodeBlanks

Özet - Kotlin Multiplatform

commonMain, expect/actual ve platform hedeflerini birleştirerek bir KMP kütüphanesi yazarsın.

Özet - Kotlin Multiplatform

Bu grupta KMP, commonMain, expect/actual, iOS ve JS hedeflerini öğrendin. Şimdi bunları birleştiren bir model yazacaksın: paylaşılan bir bilgi fonksiyonu.

Yazacağın kmpSummary fonksiyonu commonMain mantığını temsil eder; "KMP: common + expect" dizesini döndürür. main'de bu fonksiyonu çağırıp sonucu yazdıracaksın. Bu, KMP'nin tipik birleşimidir: paylaşılan kod, expect/actual köprüsü ve platform hedefleri tek bir akışta.

Birleştirme: commonMain + expect/actual + hedefler

Şimdi tüm parçaları birleştireceğiz. commonMain paylaşılan mantığı tutar; expect/actual platform köprüsünü kurar; iOS ve JS hedefleri çıktıyı üretir.

Örnek: fun kmpSummary(): String = "KMP: common + expect". Bu fonksiyon commonMain'de yaşar; her hedef onu çağırabilir. main'de println(kmpSummary()) yazarsın. Bu basit model, KMP'nin paylaşılan mantık + platform köprüsü akışını özetler.

Uygulama kmpSummary yaz

fun kmpSummary(): String tanımla. "KMP: common + expect" döndürsün. main içinde println(kmpSummary()) yaz.

Başlangıç kodu

Main.kt
// kmpSummary fonksiyonunu ekle

fun main() {
    // KMP özetini yazdır
}

Örnek çözüm

Main.kt
fun kmpSummary(): String = "KMP: common + expect"
fun main() {
    println(kmpSummary())
}

Beklenen çıktı

KMP: common + expect

Soru ve cevaplar

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

1 KMP'nin temel yapısı nedir?

Main.kt
KMP is built from shared and target sets.
  • Tek platform
  • Tek kaynak kümesi
  • Sadece iOS
  • commonMain + platform kümeleri Doğru cevap

Açıklama: KMP commonMain ve platform kümelerinden oluşur.

2 kmpSummary dizesini tamamla

Soru
fun kmpSummary(): String = "____"
Cevap
fun kmpSummary(): String = "KMP: common + expect"

Açıklama: Bu dize KMP birleşimini özetler.

3 KMP kavramlarını eşle

Kavram Anlamı
commonMain Paylaşılan kod
expect/actual Platform köprüsü
iosArm64() iPhone hedefi
js() JS hedefi

Uzman bölümündeki tüm dersler