Model Data @Serializable
Anotasikan model untuk penguraian yang aman saat kompilasi
Model Data @Serializable 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.
JSON Memerlukan Pemetaan
API berbicara dalam JSON, tetapi kode bersama Anda menginginkan objek Kotlin. kotlinx.serialization menjembatani keduanya di setiap target KMP.
Keamanan Saat Kompilasi
Berbeda dari pengurai berbasis refleksi, pustaka ini membuat kode saat waktu kompilasi, sehingga berjalan cepat dan dapat diprediksi di Android maupun iOS.
Tandai Kelas dengan @Serializable
Tambahkan @Serializable pada kelas data, lalu kompiler akan menulis pengurai untuknya secara otomatis.
@Serializable
data class User(val id: Int, val name: String)Tambahkan Plugin
Anotasi ini baru berfungsi setelah Anda menerapkan plugin Gradle kotlin-serialization ke modul bersama.
plugins { kotlin("plugin.serialization") }Tambahkan Runtime
Anda juga memerlukan dependensi runtime JSON di commonMain agar kode yang dibuat memiliki sesuatu untuk dipanggil.
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3")Encode menjadi String
Ubah model menjadi teks JSON dengan Json.encodeToString, yang siap dikirim melalui jaringan.
val text = Json.encodeToString(user)Decode dari String
Untuk arah sebaliknya, pasangan decodeToString membaca teks JSON kembali menjadi objek Kotlin bertipe.
val user = Json.decodeFromString<User>(text)Properti Menjadi Kunci
Secara bawaan, setiap nama properti menjadi kunci JSON yang sesuai, sehingga id dan name langsung dipetakan tanpa konfigurasi tambahan.
Model Bertingkat Langsung Berfungsi
Jika sebuah kelas yang dapat diserialisasi memuat kelas lain yang juga dapat diserialisasi, seluruh pohon bertingkat akan diserialisasi bersama tanpa pengaitan manual.
@Serializable
data class Order(val buyer: User)Tipe yang Didukung
Tipe primitif, string, daftar, peta, dan kelas lain yang dapat diserialisasi semuanya didukung, sehingga mencakup sebagian besar muatan API nyata yang akan Anda temui.
Benar-Benar Multiplatform
Karena pengurai dibuat dalam Kotlin, logika penguraian yang sama persis berjalan di setiap target tanpa kode khusus platform.
Pemeriksaan Singkat
Apa yang sebenarnya dipicu oleh anotasi @Serializable?
Rangkuman
Tandai model dengan @Serializable, tambahkan plugin dan runtime, lalu gunakan Json.encodeToString dan decodeFromString untuk berpindah antara objek dan JSON.
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 “Model Data @Serializable” gratis?
Ya — teks lengkap “Model Data @Serializable” 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 “Model Data @Serializable”?
Anotasikan model untuk penguraian yang aman saat kompilasi 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 “Model Data @Serializable” 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
- Model Data @Serializable
- @SerialName & Pemetaan Bidang Kustom
- Bidang Nullable, Bawaan & Opsional
- Memasukkan Serialisasi ke Ktor