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
viktor: Efficient Vectorized Computations in Kotlin

JetBrains представила библиотеку viktor для более эффективных расчетов на основе массивов
#Multiplatform

How much can we share in Kotlin MultiPlatform: single modules? data layer? view model?

KMP отличается от других кроссплатформенных подходов тем, что не предполагает написание всего мобильного приложения на одном стеке, а только шаринг бизнес логики. В статье найдете разбор как много можно подарить кода в приложениях, используя Kotlin.
📺 Kotlin Collections Overview (12 мин)
Текстовая версия

Разбор библиотеки коллекций в Kotlin и их возможностей
#Multiplatform

Серия статей от Екатерины Петровой в которой она делится тем как создать свою Kotlin Multiplatform библиотеку:
👉 Создание собственной KMP библиотеки
👉 Как публикуется KMP библиотека
👉 Публикация KMP библиотеки на Maven Central
Вышел Kotlin 1.4.32 в котором произошел багфикс, а все значимые изменения ждем в 1.5.0, который также обновился до Milestone 2 и дальше нас уже ждёт только стабильный релиз.
ki: The Next Interactive Shell for Kotlin

JetBrains представляет новый интерактивный shell - ki, который берёт всё самое лучшее от kotlinc and Kotlin REPL. Основные возможности:
👉 Автодополнение
👉 Поддержка внешних зависимостей
👉 Поддержка вывода типов (type inference)
👉 Специальный режим для вставки кода
👉 Поддержка скриптов
👉 Поддержка плагинов
#Multiplatform

Creating SwiftUI Multiplatform project (iOS and macOS) that consumes shared Kotlin Multiplatform non-UI code!

Пример реализации приложения под iOS и macOS на SwiftUI и шаринга бизнес логики на основе Kotlin Mulitplatform.
#ktor

I’m not going to use ktor as a network client anymore, here’s why

Низкая скорость записи в файлы и Socket - причина отказа автора стать от Ktor в качестве клиента. Java выполняет аналогичные операции на порядок быстрее.

Также демонстрируется своё решение на Coroutine, которое также смогло ускорить работу с этими операциями и работает с Coroutines
#IDEA

Вышел Kotlin плагин 2021.1

Kotlin плагин стал частью IDEA и теперь будет выходить вместе с ней. В новой версии нас ждёт:
🚀 Ускорено дополнение кода (code completion). Ускорение на 50%
🚀 Ускорено подсвечивание кода. Ускорение на 25%
👉 Возможность "Change signature" теперь работает лучше
👉 Для свойств с собственным getter теперь можно будет выполнить их код и получить их значение в Debug панеле
👉 Автодополнение кода для аргументов типа (generic)
👉 Теперь UML диаграммы поддерживают работу с Kotlin
👉 Все другие возможности. которые были в 2020.3 теперь также доступны новому Kotlin плагину

Также спойлернули что будут вестись работы над улучшением дебагинга Kotlin кода. Взгрустнул что теперь все фичи работы с Kotlin до Android Studio станут приезжать реже из-за синхронизации графиков релиза Kotlin плагина с IDEA
#coroutines

Use suspendCoroutine to connect callbacks and coroutines

Руководство по написанию адаптера между любым асинхронным вызовом и Coroutine
#Multiplatform

Руководство по старту работы с Kotlin Multiplatform Mobile от IceRock
👉 Почему выбирают Kotlin Multiplatform Mobile?
👉 Настройка окружения
👉 Погружение в Kotlin Multiplatform Mobile
👉 Справка по работе с KMM
👉 Работа с KMM библиотеками
👉 FAQ
#Network #Multiplatform

An Interface for Multiplatform Networking

Если вы пишете мультиплатформенное приложение на Kotlin и хотите выполнять сетевые операции, то вполне возможно вам на ум придёт решение Ktor. В Autodesk написали свою абстракцию над сетевыми операциями для более эффективного решения. Кроме набора базовых классов и интерфейсов ничего в статье не показывают (
Вышел релиз кандидат Kotlin 1.5.0

Самые интересные изменения:
👉 Unsigned целочисленные типы теперь stable
👉 Расширения для java.nio.file.Path API
👉 Функции-расширения для строк uppercase()lowercase()titlecase()  без локалей в параметрах
👉 Убрана путаница в работе Char-to-code и Char-to-digit
👉 Расшиерние multiplatform char API
👉 String?.toBoolean()
👉 Обновление Duration API и изменения в работе под капотом
👉 Новые математические операции: floorDiv(), mod()
👉 Новые расширения для коллекций firstNotNullOf() and firstNotNullOfOrNull()
👉 Обновление тестовой библиотеки
👉 Поддержка inline классов в Kotlinx serialization
👉 Поддержка Gradle 7.0
👉 Поддержка Gradle configuration cache в kotlin.multiplatform плагине
👉 Улучшение производительности
👉 Исправление багов

Kotlin 1.5.0-RC будет совместим с Kotlin 1.5.0.
#KMM #Gradle

Getting your KMM project working with Android Gradle Plugin 7.0+

Если хотите насладиться последними возможностями Jetpack Compose, писать под Android и iOS и шарить код через Kotlin Multiplatform, тогда вам придётся иметь дело Android Studio Artict Fox, которая находится в альфа и поддерживает только Gradle 7.0, который внёс breaking changes в API работы плагинов (не всех).

В статье автор разбирает как правильно настроить всё на вашем компьютере, чтобы у вас всё заработало без проблем.
#Realm #Multiplatform

Realm Kotlin Multiplatform SDK

Realm создали чистое Kotlin SDK и сделали его сразу Multiplatfrom. Написали свой Kotlin Compiler Plugin, чтобы заменить кодогенерацию процессингом аннотаций и избавиться от рефлексии.
#Kotlin1_5

📺 Sealed Interfaces and Sealed Classes Improvements (5 мин)

Совсем скоро нас ждёт новая версия Kotlin и уже начинают рассказывать о возможностях новой версии языка - sealed interface и расширениях возможностей объявления sealed classes, и конечно же их текущих ограничениях.

Помимо прочего обсуждается interop с Java Sealed Class/Interface (версия 15 и 16)
#Kotlin1_5

📺 Support for JVM Records in Kotlin 1.5.0 (2 мин)

В Kotlin 1.5.0 появится поддержка Java Records, который является аналогом Kotlin Data Class. Вы теперь можете добавить @JvmRecord и байткод будет генерироваться по другому
This media is not supported in your browser
VIEW IN TELEGRAM
#Gradle #IDEA

Gradle плагин, который позволит вам унифицировать объявление Gradle зависимостей в Kotlin DSL:
👉 Позиционные аргументы
👉 Именованные аргументы
👉 Gradle нотация зависимостей