Kotlin Serializationことはじめ

9170344325d8c88e2d77ab50c9b5d6a6?s=47 slme
August 24, 2019

Kotlin Serializationことはじめ

9170344325d8c88e2d77ab50c9b5d6a6?s=128

slme

August 24, 2019
Tweet

Transcript

  1. KotlinSerialization ことはじめ 概要と入門

  2. $ whoami - slme(スルメ) - @slme_not_found - DMM.com Androidエンジニア -

    新卒エンジニア
  3. What is Kotlin Serialization

  4. What is it - 1.3以降あたりで導入された機能 - CBOR, JSON, ProtoBufをサポート -

    100%Kotlin実装 - カスタムシリアライザで自作できる - reflectionを使わない
  5. None
  6. Http clientとの組み合わせは?

  7. Ktor Client

  8. Retrofit https://github.com/JakeWharton/retrofit2-kotlinx-serialization-converter

  9. Retrofitの場合: Moshi, Gson Ktorの場合: Kotlin Serialization

  10. Moshi, GsonはOkioを使っている ↓ OkHttpを扱う際はそちらのほうが相性が良い

  11. About Kotlin Serialization - メリット - 100% Kotlin実装 - 色々な形式を扱う時に単一で済む

    - カスタムシリアライザで自作できる - デメリット - JSON単一で扱うかつKotlin/JVMならばMoshiで良い感 - Serializationを用いてkamlのように作ってもJVM依存が生まれたりする - 一部不安定 or 非推奨がある
  12. 速度は?

  13. https://github.com/wizzardo/json-benchmarks

  14. 形式にもよるが大きな変化はない

  15. まとめ - KotlinMPPを考えないかつJSONのみであればMoshiなどで充分 - @Seralizableを使うことでJSON以外にもserialize可能になる - 一部 不安定or非推奨あり - ベンチマークは対して大きな変化はない

  16. ご清聴ありがとうございました