Kotlin Multiplatform Broadcast
9.48K subscribers
838 photos
52 videos
1.13K links
Новости и фичи Kotlin, а также Kotlin Multiplatform

YouTubе канал: https://youtube.com/androidBroadcast
Compose Multiplatform @compose_broadcast
iOS разработка @ios_broadcast
Новости Android @android_broadcast
Реклама и прочее @ab_manager
Download Telegram
#json

Custom Reactive JSON parsing

К сожалению, kotlinx serialization поддерживает парсинг JSON только из строк, что означает прежде чем начать парсить что-то, вам надо полностью считать все данные. И тут может произойти неприятное - OutOfMemoryError.

Автор статьи рассказывает как на основе своей библиотеки json.kt добавил стриминговый парсинг JSON
#json

How Trello Android converted from Gson to Moshi

В Trello отказались от Gson в пользу Moshi для работы с Json т.к. Gson не понимает Kotlin и медленее. Также Moshi позволил сделать код стабильнее из-за быстрого выявления проблем с парсингом null.

Как пройти процесс миграции безопасно вы найдёте статье
Советы по использованию kotlinx.serialization
👉 Создание собственных сериализаторов для данных
👉 Разные способы десериализации Enum Class
👉 Inline сериализация - десериализация объекта в JSON в простой объект вместо Kotlin класса
👉 Полиморфная сериализация - получения разных классов, на основе данных в JSON объекте. Полезно для sealed классов/интерфейсов
👉 Оптимизация JSON
👉 Работа со сложными типами данных
👉 Советы по использованию для высокой скорости работы

#kotlin #kotlinx #serialization #json
21👍8