CodeBlanks Logo Icon CodeBlanks

Özet - kotlinx.serialization

@Serializable, Json ve @SerialName'i birleştirerek bir API modeli yazarsın.

Özet - kotlinx.serialization

Bu grupta @Serializable, Json, @SerialName, @Optional ve polymorphic serialization kavramlarını işledik. Bunlar Kotlin ile JSON arası köprüdür.

Bir sınıfa @Serializable ekler, Json.encodeToString ile JSON üretir, Json.decodeFromString ile okur, @SerialName ile alan adlarını eşler, @Optional ile varsayılan değer verir, sealed class ile polimorfik serileştirme yaparsın. Birlikte sağlam bir veri değişim katmanı ortaya çıkar.

Uygulama Serialization özetle

@Serializable data class User(val name: String) tanımla. main içinde val user = User("Ayşe"), val json = Json.encodeToString(user) yap ve println("Özet hazır") yazdır.

Başlangıç kodu

Main.kt
// Özet: serialization
// buraya yaz
import kotlinx.serialization.Serializable
import kotlinx.serialization.json.Json

fun main() {
    
}

Örnek çözüm

Main.kt
@Serializable
data class User(val name: String)

fun main() {
    val user = User("Ayşe")
    val json = Json.encodeToString(user)
    println("Özet hazır")
}

Beklenen çıktı

Özet hazır

Soru ve cevaplar

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

1 Hangisi JSON'dan Kotlin nesnesine çevirme yöntemidir?

  • encodeToString
  • decodeFromString Doğru cevap
  • toString
  • stringify

Açıklama: decodeFromString JSON'u nesneye çevirir.

2 Tüm serialization kavramlarını eşle

Kavram Anlamı
@Serializable Sınıfı işaretler
Json Üretir ve okur
@SerialName Alan adı eşler
@Optional Varsayılan değer
polymorphic Tür etiketi

İleri seviye bölümündeki tüm dersler