Что такое Serialization в Kotlin

«Что такое Serialization в Kotlin» — вопрос из категории Kotlin, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Сериализация — это процесс преобразования объекта в последовательность байтов для хранения или передачи. В Kotlin есть несколько способов:

  1. Стандартная сериализация (Java Serializable):
@Serializable
data class User(val name: String, val age: Int)
  1. Parcelable (оптимизирован для Android):
@Parcelize
data class User(val name: String, val age: Int) : Parcelable
  1. Сторонние решения (GSON, Moshi, Kotlinx.serialization):
val json = Json.encodeToString(User("Alex", 25))

Ключевые моменты:

  • Serializable проще в реализации, но медленнее Parcelable
  • Kotlinx.serialization требует плагина компилятора
  • Для сетевых запросов обычно используют JSON-сериализацию