Kotlin Multiplatform (KMP) memungkinkan kita berbagi logic antar platform sambil tetap menulis UI native. Section ini menjelaskan struktur proyek dan pola integrasi.

# Pengenalan Kotlin Multiplatform

Pelajari konsep Kotlin Multiplatform: bagaimana satu kode bisnis Kotlin dapat berjalan di Android, iOS, JVM, dan lainnya sambil tetap mempertahankan UI native per platform.

Buka →
# Multiplatform Project Structure

Pelajari struktur proyek Kotlin Multiplatform: deklarasi target di build.gradle.kts, hierarki source set, dan cara commonMain terhubung ke platform source sets.

Buka →
# commonMain dan Platform Source Sets

Pelajari peran commonMain sebagai tempat kode bersama, hubungannya dengan source set spesifik platform, dan mekanisme expect/actual yang menjembatani keduanya.

Buka →
# expect dan actual

Pelajari mekanisme expect/actual: deklarasi kontrak di commonMain dan implementasi per platform, untuk fungsi, property, dan class.

Buka →
# Platform-Specific Code

Pelajari kapan harus menulis kode platform-specific—file I/O, network, threading, logging—dan cara memilih antara expect/actual versus dependency injection.

Buka →
# Multiplatform Dependencies

Pelajari cara mendeklarasikan dependency KMP di build.gradle.kts—commonMain untuk library multiplatform, platform source sets untuk library spesifik.

Buka →
# Multiplatform Testing

Pelajari commonTest source set: tulis test sekali dengan kotlin.test, jalankan di setiap target platform—JVM, Android, iOS—dengan hasil yang konsisten.

Buka →
# Kotlin Multiplatform Library

Pelajari cara membangun library KMP untuk Maven Central: struktur source set, deklarasi target, plugin maven-publish, dan metadata POM.

Buka →
# Multiplatform Networking

Pelajari ktor-client untuk KMP: kode HTTP bersama di commonMain dengan engine spesifik per platform—OkHttp untuk JVM/Android, Darwin untuk iOS.

Buka →
# Multiplatform Persistence

Pelajari SQLDelight dan Room KMP: definisi SQL bersama di commonMain, driver spesifik platform—AndroidSqliteDriver untuk Android, NativeSqliteDriver untuk iOS.

Buka →
# Multiplatform UI Overview

Pelajari tiga opsi UI untuk KMP: native (SwiftUI + Compose), shared ViewModel dengan UI native, dan Compose Multiplatform yang berbagi UI lintas platform.

Buka →
# Compose Multiplatform

Pelajari Compose Multiplatform: satu UI codebase Compose untuk Android, iOS, Desktop, dan Web dengan struktur source set KMP.

Buka →
# Multiplatform Deployment

Pelajari cara membangun artifact per target KMP—JAR untuk JVM, AAR untuk Android, Framework untuk iOS, KLIB untuk Native—dan strategi distribusinya.

Buka →