0Pricing
Kotlin Multiplatform Academy · Ders

Ayar Soyutlamasına Neden İhtiyaç Duyarsınız

SharedPreferences ve NSUserDefaults üzerinde tek bir API kullanın.

Ayar Soyutlamasına Neden İhtiyaç Duyarsınız, CoddyKit'te ücretsiz bir Kotlin Multiplatform Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Kotlin Multiplatform Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Kotlin Multiplatform Academy kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

The Storage Gap

Android and iOS each ship their own way to save small values. Without a shared layer, you would write that code twice. Let's fix that. 🔑

Two Native Stores

Android stores small key-value data in SharedPreferences, while iOS uses NSUserDefaults. Same idea, two very different APIs.

One API to Rule Them

A Settings abstraction wraps both native stores behind a single Kotlin interface, so your shared code calls one method everywhere.

Meet Multiplatform Settings

The community library multiplatform-settings gives you exactly that: one Settings type backed by the right native store on each platform.

Add the Dependency

You add the multiplatform-settings artifact to your shared module's commonMain so every target can use it.

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

The Settings Interface

At its core sits the Settings interface. Your shared code depends on this type, never on the platform store directly.

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

Why Abstract at All

Abstraction keeps your shared logic portable. Swap the backing store or add a platform later, and the calling code never changes.

Perfect for Small Data

Settings is built for small values: flags, a username, a theme choice. For big or relational data, reach for SQLDelight instead.

Inject, Don't Create

Each platform builds its own Settings instance and passes it into shared code, so commonMain stays free of platform dependencies.

Call It from Common

Once injected, your shared code just calls Settings methods. The same line runs on Android and iOS without a single change.

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

Test-Friendly by Design

Because it's an interface, you can drop in a fake in-memory Settings during tests, no device or emulator needed. 🧪

Quick Check

Let's make sure the abstraction's purpose is clear.

Recap

You learned why KMP wraps native key-value stores behind one Settings interface: portable, testable, and written once. Next, real reads and writes. 🎉

Sıkça Sorulan Sorular

“Ayar Soyutlamasına Neden İhtiyaç Duyarsınız” dersi ücretsiz mi?

Evet — “Ayar Soyutlamasına Neden İhtiyaç Duyarsınız” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Kotlin Multiplatform Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Kotlin Multiplatform Academy kursu toplamda 4 dersten oluşur.

“Ayar Soyutlamasına Neden İhtiyaç Duyarsınız” dersinde ne öğreneceğim?

SharedPreferences ve NSUserDefaults üzerinde tek bir API kullanın. Kotlin Multiplatform Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Kotlin Multiplatform Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Kotlin Multiplatform Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“Ayar Soyutlamasına Neden İhtiyaç Duyarsınız” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Kotlin Multiplatform Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Kotlin Multiplatform Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Ayar Soyutlamasına Neden İhtiyaç Duyarsınız
  2. Türü Belirli Değerleri Okuma ve Yazma
  3. Varsayılanlar ve Anahtarları Temizleme
  4. Kimlik Doğrulama Token'ını Güvenle Saklama
← Kotlin Multiplatform Academy Sayfasına Dön