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

YouTubе канал: https://youtube.com/androidBroadcast
Compose Multiplatform @compose_broadcast
iOS разработка @ios_broadcast
Новости Android @android_broadcast
Реклама и прочее @android_broadcast_bot
Download Telegram
KDeviceInfo - библиотека для получения информации об Android/iOS устройстве

#kmp #android #ios @kotlin_broadcast
18👍7🔥2🤯1
Romain Guy не останавливается и продолжает оптимизировать реализации функции стандартной библиотеки Kotlin. Новая часть (5 мин) рассказывает про CharSequence.isBlank().

Проблема функции - использование indices что приводит к созданию коллекции с индексами

Заметной скорости получилось добиться и тут. Меня поражает как разработчики JetBrains делают такие неэффективные реализации. Зачем все эти алгоритмы и сложны собеседования при таких результатах?

#performance
🤯56👍11
Jake Wharton решил исследовать как лучше делать маппинг набора значений в одну строку и какую лучше выбрать реализацию для этого по скорости/памяти. Массивы с лямбдой инициализации значений будут довольно полезны

#performance
👍21🤯2
В статье (5 мин) рассказывается про библиотеку для генерации методов мапперов классов для Kotlin Multiplatform классов. Исходники библиотеки тут
👍9🔥1
Всеволод Толстопятов, разработчик из команды Kotlin, дал комментарий по поводу оптимизаций, которые сделал Romain Guy. То что так получается это не баг, а фича, так как API стараюься сделать идеоматичным и достичь производительности можно идеоматичными инструкциями без погружения на низкий уровень оптимизаций

#performance
🤯18👍9
Вышла библитека KotlinX Coroutines 1.8.0
👉 Поддержка WASM
👉 Kotlin 1.9.21
🛠️ Исправление багов

#coroutines #wasm @kotlin_broadcast
🔥32👍83
Ну наконец-то кто-то это сделал Показывают почему не стоит использовать активно mapOf(vararg pairs: Pair<K, V>) из-за создания промежуточных объектов. Подробности в статье (5 мин)

Недавно в Android завели новые типы - ScatterMap, которые могут помочь вам ускорить работу кода и снизить нагрузку на память

#performance
🔥18🤯5
Опыт использования Amper - нового инструмента для конфигурации проектов от JetBrains. Автор статьи рассказывает применение в Fleet для KMP проекта с Compose. Исходный код тут

#tooling @kotlin_broadcast
🤯21👍6
Jetpack Lifecycle 2.8.0 (находится в разработке) активно переписывается на Kotlin и обзаводится поддержкой Kotlin Multiplatform. Сейчас ей обзавелись типы LifecycleLifecycleOwnerLifecycleObserverLifecycle.StateLifecycle.Event, и LifecycleRegistry и выделили в отдельный артефакт

#jetpack #kmp #multiplatform @kotlin_broadcast
👍38🔥4
7 примеров использования Kotlin Coroutines (EN, 6 мин, ссылка без VPN) чтобы лучше их понять:
👉 Запусти корутину и забудь
👉 Отмена корутины
👉 Запуск корутины из корутины
👉 Запуск корутины с указанием job
👉 Запуск корутины в другом пуле потоков
👉 Опции при запуске корутины
👉 Что происходит при использовании CoroutineScope

#coroutine
🔥21👍5🎉1
Jake Wharton решает разными способами на Kotlin задачку по поиску повторяющихся значений в массиве
👍22👏5
Вышел Coil 2.6.0:
👉 Оптимизации для лучшей работы с Compose
🛠️ Исправление багов
👉 Kotlin 1.9.22 и обновление других зависимостей

#coroutines #library
👍16
PriorityDispatcher - CoroutineDispatcher, который работает на основе приоритетов. Проблема с том, что задать приоритет для корутины не получится в рамках единого Dispatcher. Создаются отдельные с с заданным приоритетом

#coroutines
👍44🤯3👏1
Неплохая статья про то как в Kotlin работать с Nullability в Generics. Как раз с таким я встрял на стриме с кодингом 😂

🔗 Альтернативная ссылка

#generics @kotlin_broadcast
👍27
Note Delight - open source приложение на Kotlin Multiplatform и Compose Multiplatform с поддержкой Android, iOS, Desktop. Автор один из подписчиков и уверен что ответит на ваши комментарии

#sample #android #ios #desktop @kotlin_broadcast
👍29🔥43👏2
Kotlin Foundation была принята в качества ментора в рамках программы Google Summer of Code 2024
👍23