Kotlin Multiplatform Broadcast
9.47K subscribers
821 photos
48 videos
1.09K links
Новости и фичи Kotlin, а также Kotlin Multiplatform

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

Вышел GraphQL Kotlin 4.0

Мажорное обновление мультиплатформенной библиотеки для работы с GraphQL, которое базируется на Ktor. В новой версии произошло много чистки API и рефакторинга старого кода
#Kotlin1_5

From inline to Value Classes

В Kotlin 1.5.0 нас ждёт стабилизация inline классов и одновременная замена. Теперь они станут частью value классов, новой фичи Kotlin, которая будет позже.
#SQL #Multiplatform

Вышел SQLDelight 1.5.0 в котором произошло множество улучшений и появилась поддержка Android Paging 3.0.
📺 More about future support for value classes

В Kotlin 1.5 inline классы станут value и лишь малой реализацией будущем большой фичи, подробности о которой и рассказываются в видео. Идея строится чтобы произвольные объекты могли хранится не только по ссылке, но и аналогичном примитивным типам Java.

Всё пока вилами по воде, и не факт что вообще value класс могут появится в Kotlin.
#Coroutines

Вышел Release Candidate следующей версии библиотеки Coroutines - 1.5.0-RC. Нас ждёт:
👉 массовая чистка Channel API и удаление уже depracted API ранее.
👉BroadcastChannel и ConflatedBroadcastChannel помечены как ObsoleteCoroutinesApi. Используйте SharedFlow или StateFlow
👉callbackFlow и channelFlow теперь стабильна
👉интеграция с другими реактивными библиотеками теперь полностью стабильна и улучшена работа
👉Новые операторы Flow
👉Улучшение производительности
👉Исправление багов
#Serializarion

Вышла kotlinx.serialization 1.2.0
🚀 Ускорение кодирования и декодирования JSON
👉 Возможность задавать несколько имён одному и то же property
👉 JsonConfiguration теперь часть публичного API
👉 Генерация .proto файлов на основе сериализуемых Kotlin классов
👉 Сериализация generic классов
🕓 Поддержка watchOS
🔨 Исправление багов
Новая библиотека Reflekt от JetBrains Research, которая в compile time заменяет вызовы рефлексии на обычные API, что позволяет не тормозить приложения во время работы.
#Multipalform #Mobile #Пример

Вышел официальный пример на KMM - KMM RSS Reader

Приложение является официальным примером от JetBrains реализации мобильного приложения для iOS и Android на основе Kotlin Mutiplatform Mobile. Построено всё по принципам Clean Architecture и используется Redux подобный подход. Приложение использует:
👉 Jetpack Compose
👉 SwiftUI
👉 Coroutines
👉 KotlinX Serialization
👉 Ktor Http Client
👉 Modo

В README вы найдете все подробности и детали архитектуры приложения.
Effective Kotlin Item 36: Prefer composition over inheritance

Рассказа почему композиция лучше наследования и какие ограничения накладываются механизмом наследования в Kotlin/Java
#Compose

Technology Preview: Jetpack Compose for Web

Compose уже не только в Java мире, но и в JS - тех превью Compose для Web уже здесь! Оно полностью не готово для использования в реальных приложениях или проводить тесты производительности, но вы уже можете посмотреть на видение реализации JetBrains.

Landing страницу Compose for Web уже переписали на новый инструмент
Вышел Kotlin 1.5.0

Новая версия языка Kotlin уже доступна официально для всех и мы получаем:
🔥 Новый JVM IR компилятор теперь является основным. Это приближает релиз Jetpack Compose 1.0 ближе
👉 Поддержка JVM records (Android разработке недоступна) аля data clas
👉 sealed interface
👉 value классы, которые пришли на смену inline классам
👉 value классы сменили inline и теперь они stable
👉 Улучшения в sealed классах

Стандартная библиотека
👉 unsigned числовые типы теперь стабильные
👉 Расширения для java.nio.file.Path
👉 Улучшения в String и Char API
👉 Улучшение тестовой библиотеки

JVM
👉 Компиляция SAM адаптеров и лямбд в invokedynamic
👉 Target JVM 1.8 теперь основной, а 1.6 - deprecated
👉 Улучшение обработки nullability из Java

Также без улучшений скорости не остался Kotlin/Native, а Kotlin/JS IR компилятор перешёл в Beta.

25 мая пройдет Kotlin 1.5 Online Event. Регистрация бесплатная
#AndroidBroadcast #Kotlin

📺 Что нового в Kotlin 1.5.0

Не успела новая версия языка выйти, а на YouTube уже разбор всех возможностей
#Serialization

kotlinx.serialization 1.2 Released: High-Speed JSON Handling, Value Class Support, Overhauled Docs, and more

Я уже рассказывал о новых возможностях Kotlinx Serialization, но вот вам официальный анонс и видео
#Corouitnes #Flow

Things to know about Flow’s shareIn and stateIn operators

Разбор как операторы shareIn и stateIn как могут увеличить производительность в отдельных случаях, демонстрация разницы между ними и ошибки, которые пользователи могут допустить с ними
Вышла kotlinx-datetime 0.2.0
👉 Поддержка kotlinx.serialization
👉 Нормализация компонентов DateTimePeriod 
👉 Возможность парсинга Instant из строки со смещением UTC
Вышел Detekt 1.17.0. Как всегда, улучшения, исправления багов, пара новых проверок. Обновляться стоит, чтобы улучшить качество кода. Про поддержку Kotlin 1.5.0 ничего не написали
Вышла библиотека Kotlinx Coroutines 1.5.0. Значимых изменений по сравнению с 1.5.0-RC1 нет.
#Coroutines

Kotlin Coroutines 1.5: GlobalScope Marked as Delicate, Refined Channels API, and More

Вышла новая версия библиотеки Kotlinx coroutines. Важных изменений по сравнению с RC нет. Рассказывал про них здесь
#Roadmap

Обновление Kotlin Roadmap май 2021

Из приоритетов команды на следующие полгода:
👉 Новый компилятор (IR)
👉 Улучшение IDE
👉 Kotlin Multiplatform Mobile
👉 Kotlin для серверной JVM разработки
#KotlinNative

Kotlin/Native Memory Management Update

В 2020 анонсировали переработку управления памятью в Kotlin/Native. В конце лета 2021 обещают показать dev preview. В статье рассказывается про сборщики мусора и в каком состоянии сейчас находится новый GC
Forwarded from Android Broadcast
#Kotlin

Вышел Kotlin 1.5.10 в котором исправили множество багов в JVM IR и другие баги