JavaRush
AI Academy
new
Promotion
Learning
Courses
Tasks
Quizzes
Games
Help
Schedule of nudges
Internship
Community
Users
Forum
Chat
Articles
Success stories
Activities
Reviews
Subscriptions
Light theme

Lectures

  • Reviews
  • About us
  • CS50
Start
Start learning
Start learning
  • My progress
  • Courses
  • Quest map
  • Lectures
  • Introduction to serialization

    Kotlin SELF
    47 level,0 lecture
    We break down what serialization and deserialization are in Kotlin/JVM: why objects like List<Expense> need a portable form (string/bytes), why you can’t treat toString() as a “storage format”, why hand-assembling JSON without escaping is dangerous, and why any storage schema is a data contract (fields, types, version compatibility). At the end— a mini sketch of a file structure and common mistakes when designing persistence.
    Open
  • JSON Structure and Its Relationship to Kotlin Types

    Kotlin SELF
    47 level,1 lecture
    We break down the JSON “alphabet”: an object {...}, an array [...], primitives, and null, and map them to Kotlin types: data class, Map, List, String, Int/ Long/ Double, nullable types T?. We learn to “read JSON with our eyes,” understand nesting, and catch typical mistakes early (quotes around keys, trailing commas, mixing up strings and numbers, null vs "null").
    Open
  • Adding kotlinx.serialization and the @Serializable annotation

    Kotlin SELF
    47 level,2 lecture
    We break down why serialization is needed in Kotlin projects, how kotlinx.serialization works (compiler plugin + runtime), how to correctly add kotlin("plugin.serialization") and the dependency on the JSON module, and how to apply the @Serializable annotation to models ( Expense, AppState). At the end, there is a quick test via serializer() and a walkthrough of typical mistakes.
    Open
  • Basic encode/ decode pipeline + storing JSON in a file

    Kotlin SELF
    47 level,3 lecture
    We walk through an honest end-to-end data persistence chain for a console Kotlin project: how to serialize an object and a list to JSON via Json.encodeToString, write the JSON string to a file ( writeText), then read it back ( readText) and restore the data via Json.decodeFromString. We also discuss error diagnostics (I/O vs JSON parsing) and common pitfalls like toString(), a missing directory, and confusion between {} and [].
    Open
  • Configuring Json { ... }: readability, compatibility, strictness

    Kotlin SELF
    47 level,4 lecture
    We break down kotlinx.serialization.json.Json settings as part of the data storage “contract”: how prettyPrint helps with readability and diffs, how encodeDefaults affects file “self-sufficiency”, why explicitNulls changes the meaning of “field is missing” vs “field = null”, and how to achieve compatibility via ignoreUnknownKeys and careful importing with isLenient. At the end: a practical template for a single appJson for the whole application and a walkthrough of common mistakes.
    Open
Learn
  • Registration
  • Java course
  • Help with tasks
  • Pricing
Community
  • Users
  • Articles
  • Forum
  • Chat
  • Success stories
  • Activities
Company
  • About us
  • Contacts
  • Reviews
  • FAQ
  • Support
JavaRushJavaRush — is an interactive online course for learning Java programming from scratch. It contains 1200 practical tasks with one-click solution checking, the necessary minimum of theory on Java basics, and motivating features that help you complete the course: games, quizzes, interesting projects and articles on effective learning and the career of a Java developer.
Follow us
Язык интерфейса
Русский
English
Українська
"Programmers are not born" © 2026 JavaRush
MastercardVisa
"Programmers are not born" © 2026 JavaRush