Необходимость serialVersionUID в Kotlin при разработке для Android

У меня было внутреннее обсуждение требований к serialVersionUID при кодировании в Kotlin, особенно для платформы Android. В Java мы всегда добавляли его, поскольку Android Studio делает это очень просто. Однако для Kotlin здесь нет никакой помощи. Это заставило нас усомниться в требовании Kotlin для serialVersionUID.

Что вы думаете об этом;

  • Возможны ли сценарии, когда что-то может пойти не так?
  • Вы все еще добавляли serialVersionUID (предположительно в качестве сопутствующего объекта)?

Я очень хочу услышать ваше мнение.

0
0
451
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

serialVersionUID используется только сериализацией Java (java.io.Serializable). Большинство приложений Android используют сериализацию, специфичную для Android (Parcelable), потому что это более эффективно. Если ваше приложение не использует сериализацию Java, нет никаких преимуществ от включения serialVersionUID в ваши классы, независимо от того, используете ли вы Java или Kotlin.

Спасибо @yole, в этом есть большой смысл. Я передам это команде

Michiel 03.10.2018 12:57

Это необходимо, если вы настаиваете на использовании класса Serializable, это необходимо для предотвращения проблемы сбоя десериализации, вызванной изменениями свойств. Теперь вы можете использовать плагин в Android Studio для автоматической генерации UID серийной версии по умолчанию, например Java. Адрес плагина здесь: Generateserialversionuid.

Другие вопросы по теме