CodeBlanks Logo Icon CodeBlanks

KMP

Kotlin Multiplatform (KMP) kavramını öğrenirsin.

KMP nedir?

Kotlin Multiplatform (KMP), aynı Kotlin kodunu birden fazla platformda paylaşmanı sağlayan bir teknolojidir. JVM, Android, iOS, JS ve Native hedeflerini destekler.

Bir KMP projesi Gradle'da kotlin("multiplatform") plugin'i ile başlar. Paylaşılan kod commonMain kaynak kümesine yazılır; platforma özgü kod her hedefin kendi kümesine eklenir. Bu derste basit bir kmpInfo fonksiyonuyla konsepti modelleyeceğiz.

KMP hedefleri

KMP, birçok hedefi aynı projede barındırır: JVM, Android, iOS (arm64, x64), JS ve Native (Linux, Windows, macOS).

Her hedef Gradle'da ayrı bir blokla eklenir; örneğin jvm(), iosArm64(), js(). Hedefler kendi kaynak kümelerine sahiptir: jvmMain, iosMain, jsMain. Paylaşılan kod commonMain'de yazılır ve her hedef onu kullanabilir. Platforma özgü bölümler ise ilgili hedefin kümesine eklenir.

Uygulama kmpInfo yaz

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

Başlangıç kodu

Main.kt
// kmpInfo fonksiyonunu ekle

fun main() {
    // kmp bilgisini yazdır
}

Örnek çözüm

Main.kt
fun kmpInfo(): String = "KMP"
fun main() {
    println(kmpInfo())
}

Beklenen çıktı

KMP

Soru ve cevaplar

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

1 KMP projesini hangi Gradle plugin başlatır?

  • application
  • kotlin("jvm")
  • kotlin("multiplatform") Doğru cevap
  • java-library

Açıklama: kotlin("multiplatform") plugin'i KMP projesini başlatır.

2 plugin satırını tamamla

Soru
plugins { kotlin("____") }
Cevap
plugins { kotlin("multiplatform") }

Açıklama: kotlin("multiplatform") plugin'i KMP'yi başlatır.

3 KMP parçalarını eşle

Kavram Anlamı
kotlin("multiplatform") Gradle plugin
commonMain Paylaşılan kod
iosArm64() iPhone hedefi
js() Tarayıcı hedefi

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