@Serializable-Data-Models
Models für typsichere Verarbeitung zur Compile-Zeit annotieren
@Serializable-Data-Models ist eine kostenlose Kotlin Multiplatform Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Kotlin Multiplatform Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Kotlin Multiplatform Academy-Kurs umfasst insgesamt 4 Lektionen.
JSON Needs a Map
APIs sprechen JSON, aber dein gemeinsamer Code möchte Kotlin-Objekte. kotlinx.serialization schließt diese Lücke auf jedem KMP-Ziel.
Compile-Time Safety
Im Gegensatz zu reflexionsbasierten Parsern generiert diese Bibliothek Code zur Kompilierzeit und funktioniert daher schnell und vorhersehbar unter Android und iOS.
Mark a Class @Serializable
Sie versehen eine Datenklasse mit @Serializable und der Compiler generiert automatisch einen Serialisierer dafür.
@Serializable
data class User(val id: Int, val name: String)Add the Plugin
Die Annotation funktioniert erst, wenn Sie das kotlin-serialization-Gradle-Plugin auf Ihr gemeinsames Modul anwenden.
plugins { kotlin("plugin.serialization") }Add the Runtime
Sie benötigen außerdem die JSON-Laufzeitabhängigkeit in commonMain, damit der generierte Code etwas aufrufen kann.
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3")Encode to a String
Wandeln Sie ein Modell mit Json.encodeToString in JSON-Text um, der für die Übertragung über das Netzwerk bereit ist.
val text = Json.encodeToString(user)Decode From a String
In die andere Richtung liest das Gegenstück von decodeToString JSON-Text wieder in ein typisiertes Kotlin-Objekt ein.
val user = Json.decodeFromString<User>(text)Properties Become Keys
Standardmäßig wird jeder Eigenschaftsname zum passenden JSON-Schlüssel, sodass id und name ohne zusätzliche Konfiguration direkt übernommen werden.
Nested Models Just Work
Wenn eine serialisierbare Klasse eine andere serialisierbare Klasse enthält, wird der gesamte verschachtelte Baum ohne manuelle Verkabelung gemeinsam serialisiert.
@Serializable
data class Order(val buyer: User)Supported Types
Primitive Datentypen, Strings, Listen, Maps und andere serialisierbare Klassen werden unterstützt, womit die meisten realen API-Nutzdaten abgedeckt sind, denen Sie begegnen werden.
Truly Multiplatform
Da der Serialisierer aus generiertem Kotlin besteht, läuft exakt dieselbe Parsing-Logik auf jedem Ziel ohne plattformspezifischen Code.
Quick Check
Was bewirkt die @Serializable-Annotation eigentlich?
Recap
Markieren Sie Modelle mit @Serializable, fügen Sie das Plugin und die Runtime hinzu und verwenden Sie dann Json.encodeToString und decodeFromString, um zwischen Objekten und JSON zu wechseln.
Häufig gestellte Fragen
Ist die Lektion „@Serializable-Data-Models“ kostenlos?
Ja — der vollständige Text von „@Serializable-Data-Models“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Kotlin Multiplatform Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Kotlin Multiplatform Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „@Serializable-Data-Models“?
Models für typsichere Verarbeitung zur Compile-Zeit annotieren Du übst Kotlin Multiplatform Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Kotlin Multiplatform Academy zu starten?
Keine Vorkenntnisse erforderlich. Kotlin Multiplatform Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „@Serializable-Data-Models“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Kotlin Multiplatform Academy-Lektion Code schreiben und ausführen?
Ja. Jede Kotlin Multiplatform Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- @Serializable-Data-Models
- @SerialName und benutzerdefiniertes Field-Mapping
- Nullable-, Default- und optionale Felder
- Serialization in Ktor integrieren