Kotlin Multiplatform Academy · Pelajaran

Mengapa Abstraksi Pengaturan Diperlukan

Satu API di atas SharedPreferences dan NSUserDefaults

Pelajaran 1 dari 413 langkah

Mengapa Abstraksi Pengaturan Diperlukan adalah pelajaran Kotlin Multiplatform Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Kotlin Multiplatform Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Kotlin Multiplatform Academy mencakup 4 pelajaran total.

Kesenjangan Penyimpanan

Android dan iOS masing-masing menyediakan cara sendiri untuk menyimpan nilai kecil. Tanpa lapisan bersama, Anda harus menulis kode tersebut dua kali. Mari kita perbaiki. 🔑

Dua Penyimpanan Native

Android menyimpan data kecil berbentuk kunci-nilai di SharedPreferences, sedangkan iOS menggunakan NSUserDefaults. Gagasannya sama, tetapi API-nya sangat berbeda.

Satu API untuk Keduanya

Sebuah abstraksi Settings membungkus kedua penyimpanan native di balik satu antarmuka Kotlin, sehingga kode bersama Anda memanggil satu metode di mana pun.

Berkenalan dengan Multiplatform Settings

Pustaka komunitas multiplatform-settings menyediakan tepat hal tersebut: satu tipe Settings yang menggunakan penyimpanan native yang sesuai di setiap platform.

Tambahkan Dependensi

Tambahkan artefak multiplatform-settings ke commonMain modul bersama agar setiap target dapat menggunakannya.

commonMain.dependencies {
    implementation("com.russhwolf:multiplatform-settings:1.1.1")
}

Antarmuka Settings

Intinya adalah antarmuka Settings. Kode bersama Anda bergantung pada tipe ini, bukan langsung pada penyimpanan platform.

interface Settings {
    fun putString(key: String, value: String)
    fun getString(key: String, defaultValue: String): String
}

Mengapa Perlu Abstraksi

Abstraksi membuat logika bersama Anda tetap portabel. Anda dapat mengganti penyimpanan dasar atau menambahkan platform lain tanpa mengubah kode pemanggil.

Sempurna untuk Data Kecil

Settings dibuat untuk nilai-nilai kecil: penanda, nama pengguna, atau pilihan tema. Untuk data besar atau relasional, gunakan SQLDelight.

Suntikkan, Jangan Buat

Setiap platform membuat instans Settings sendiri dan meneruskannya ke kode bersama, sehingga commonMain bebas dari dependensi platform.

Panggil dari Kode Bersama

Setelah disuntikkan, kode bersama Anda cukup memanggil metode Settings. Baris yang sama berjalan di Android dan iOS tanpa perubahan sedikit pun.

fun saveTheme(settings: Settings, theme: String) {
    settings.putString("theme", theme)
}

Dirancang agar Mudah Diuji

Karena berbentuk antarmuka, Anda dapat memasukkan Settings palsu dalam memori selama pengujian, tanpa memerlukan perangkat atau emulator. 🧪

Pemeriksaan Singkat

Mari pastikan tujuan abstraksi ini sudah jelas.

Ringkasan

Anda telah mempelajari alasan KMP membungkus penyimpanan kunci-nilai native di balik satu antarmuka Settings: portabel, mudah diuji, dan ditulis sekali. Selanjutnya, pembacaan dan penulisan nyata. 🎉

Gratis untuk memulai

Belajar Kotlin dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
30
Pelajaran
120

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Mengapa Abstraksi Pengaturan Diperlukan” gratis?

Ya — teks lengkap “Mengapa Abstraksi Pengaturan Diperlukan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Kotlin Multiplatform Academy, upgrade ke CoddyKit PRO. Kursus Kotlin Multiplatform Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Mengapa Abstraksi Pengaturan Diperlukan”?

Satu API di atas SharedPreferences dan NSUserDefaults Kamu berlatih Kotlin Multiplatform Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Kotlin Multiplatform Academy?

Tidak diperlukan pengalaman sebelumnya. Kotlin Multiplatform Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Mengapa Abstraksi Pengaturan Diperlukan” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Kotlin Multiplatform Academy ini?

Ya. Setiap pelajaran Kotlin Multiplatform Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mengapa Abstraksi Pengaturan Diperlukan
  2. Membaca & Menulis Nilai Bertipe
  3. Nilai Bawaan & Menghapus Kunci
  4. Menyimpan Token Autentikasi dengan Aman
← Kembali ke Kotlin Multiplatform Academy