ch
Feedback
Kotlin Multiplatform Broadcast

Kotlin Multiplatform Broadcast

前往频道在 Telegram

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

显示更多
9 607
订阅者
-324 小时
-157
-4030
吸引订阅者
七月 '26
七月 '26
+35
在1个频道中
六月 '26
+64
在1个频道中
Get PRO
五月 '26
+76
在1个频道中
Get PRO
四月 '26
+97
在1个频道中
Get PRO
三月 '26
+79
在2个频道中
Get PRO
二月 '26
+106
在1个频道中
Get PRO
一月 '26
+128
在0个频道中
Get PRO
十二月 '25
+96
在3个频道中
Get PRO
十一月 '25
+99
在2个频道中
Get PRO
十月 '25
+286
在3个频道中
Get PRO
九月 '25
+117
在3个频道中
Get PRO
八月 '25
+105
在4个频道中
Get PRO
七月 '25
+119
在2个频道中
Get PRO
六月 '25
+134
在3个频道中
Get PRO
五月 '25
+268
在3个频道中
Get PRO
四月 '25
+283
在4个频道中
Get PRO
三月 '25
+150
在2个频道中
Get PRO
二月 '25
+182
在3个频道中
Get PRO
一月 '25
+170
在1个频道中
Get PRO
十二月 '24
+158
在3个频道中
Get PRO
十一月 '24
+252
在5个频道中
Get PRO
十月 '24
+285
在4个频道中
Get PRO
九月 '24
+258
在4个频道中
Get PRO
八月 '24
+256
在2个频道中
Get PRO
七月 '24
+180
在3个频道中
Get PRO
六月 '24
+243
在3个频道中
Get PRO
五月 '24
+397
在8个频道中
Get PRO
四月 '24
+296
在4个频道中
Get PRO
三月 '24
+231
在1个频道中
Get PRO
二月 '24
+292
在3个频道中
Get PRO
一月 '24
+307
在3个频道中
Get PRO
十二月 '23
+252
在0个频道中
Get PRO
十一月 '23
+166
在6个频道中
Get PRO
十月 '23
+206
在4个频道中
Get PRO
九月 '23
+174
在0个频道中
Get PRO
八月 '23
+287
在0个频道中
Get PRO
七月 '23
+330
在0个频道中
Get PRO
六月 '23
+219
在0个频道中
Get PRO
五月 '23
+401
在0个频道中
Get PRO
四月 '23
+108
在0个频道中
Get PRO
三月 '23
+179
在0个频道中
Get PRO
二月 '23
+205
在0个频道中
Get PRO
一月 '23
+277
在0个频道中
Get PRO
十二月 '22
+630
在0个频道中
Get PRO
十一月 '22
+148
在0个频道中
Get PRO
十月 '22
+300
在0个频道中
Get PRO
九月 '22
+373
在0个频道中
Get PRO
八月 '22
+239
在0个频道中
Get PRO
七月 '22
+242
在0个频道中
Get PRO
六月 '22
+324
在0个频道中
Get PRO
五月 '22
+198
在0个频道中
Get PRO
四月 '22
+331
在0个频道中
Get PRO
三月 '22
+169
在0个频道中
Get PRO
二月 '22
+222
在0个频道中
Get PRO
一月 '22
+100
在0个频道中
Get PRO
十二月 '21
+111
在0个频道中
Get PRO
十一月 '21
+87
在0个频道中
Get PRO
十月 '21
+48
在0个频道中
Get PRO
九月 '21
+121
在0个频道中
Get PRO
八月 '21
+281
在0个频道中
Get PRO
七月 '21
+61
在0个频道中
Get PRO
六月 '21
+149
在0个频道中
Get PRO
五月 '21
+138
在0个频道中
Get PRO
四月 '21
+331
在0个频道中
Get PRO
三月 '21
+156
在0个频道中
Get PRO
二月 '21
+238
在0个频道中
Get PRO
一月 '21
+964
在0个频道中
日期
订阅者增长
提及
频道
17 七月+2
16 七月0
15 七月+2
14 七月+4
13 七月0
12 七月+3
11 七月+1
10 七月+1
09 七月+3
08 七月+1
07 七月+3
06 七月+7
05 七月+4
04 七月+1
03 七月+1
02 七月+1
01 七月+1
频道帖子
🏝 Всем, кто ждал Kotlin 2.4.10 для обновления на новую версию языка — обновляйтесь! Из того, что реально касается продакшн-к
🏝 Всем, кто ждал Kotlin 2.4.10 для обновления на новую версию языка — обновляйтесь! Из того, что реально касается продакшн-кода - исправлена регрессия в Compose Compiler: классы, которые раньше считались stable, в 2.4.0 иногда определялись как runtime/Uncertain. Если недавно обновились на 2.4.0 и столкнулись со странными лишними рекомпозициями — обновляйтесь на новую версию. #Kotlin #Compose

2
🏝 Kotlin/Native в 2.4.20 включает инкрементальную компиляцию klib по умолчанию В Kotlin 2.4.20-Beta1 включали инкрементальную компиляцию Native: теперь пересобираются только затронутые части klib. На debug-сборках KMP это должно заметно резать время, а это ровно та боль, из-за которой iOS-таргет не хочется перезапускать лишний раз. Есть честная оговорка от самих JetBrains ⚠️: за инкрементальность можно платить на clean-сборках. Лучше отключаете флагом на CI/CD : kotlin.incremental.native=false Попробуйте померять результат на своём проекте и делитесь в комментариях #Kotlin #KMP #KotlinNative
2 541
3
❗️Жара со скидками! Всего неделя на обновление рабочего места С 13 по 19 июля включительно распродажа продукции для рабочего
❗️Жара со скидками! Всего неделя на обновление рабочего места С 13 по 19 июля включительно распродажа продукции для рабочего пространства! Скидки до -25% в Ergostol. В акции участвуют популярные модели столов, рам, кресел и других аксессуаров. Это отличная возможность приобрести их выгодно! ➡️ Со всеми предложениями можно ознакомиться на сайте. 💲Скидка -10% по промокоду ANDROID10  на сайте Ergostol на все столы, опции к ним и кресла. Так же промокод действует и на Ozon 👄 Реклама. ООО «СОФТЭФФЕКТ». ИНН 7735575262
2 672
4
🏝 JetBrains выпустили открытый бенчмарк для оценки AI-агентов на задачах с Kotlin Раньше о том, насколько агент реально спра
🏝 JetBrains выпустили открытый бенчмарк для оценки AI-агентов на задачах с Kotlin Раньше о том, насколько агент реально справляется с Kotlin, приходилось судить по внутренним ощущениям. Теперь есть общий ориентир - JetBrains выкатили Kotlin Benchmark: 100+ инженерных задач из реальных open-source репозиториев, методология на базе SWE-bench. Агент читает issue, разбирается в контексте проекта и генерирует патч, который проверяется тестами в контейнере. Первые результаты на лидерборде: 🏆 Claude Code с Opus 4.7 xhigh — 90 из 105 (85,71%) 🥈 JetBrains Junie с Opus 4.7 max — 81,9% 🥉 Codex с GPT-5.5 xhigh — 81,9% ‼️ ВАЖНО: цифры публикует сам JetBrains, это не независимый бенчмарк, хотя датасет и харнесс открыты на GitHub, и методику можно проверить самому. Это первая итерация: без свежих моделей, без Android и KMP специфики (обещают добавить в следующей), и меряют пока только «тест прошёл или нет», без стоимости, скорости и качества кода. Ценность для сообщества явно будет в том, что теперь есть хоть какой-то публичный и проверяемый ориентир для Kotlin. Также мне понравилось, что в дашборде указывается связка «Агент + Модель + Effort». Жду, когда там появятся китайские модели с открытыми весами. #Kotlin #AI
4 464
5
🔴 Начинаем прямой эфир про обсуждение надо Kotlin Multiplatform? Я планирую перейти в банке на него, а вот гость эфира - отказались по полной! Все будет только на 🪙 Boosty
659
6
Стали доступны записи докладов с KotlinConf'26 https://youtube.com/playlist?list=PLlFc5cFwUnmz2P7lOnSLBBULWXGv-sJWz
8
7
🏝 Kotlin 2.4.10-RC: что пофиксили перед стабильным релизом Вышел RC, фич нет, только баги из 2.4.0. Если придерживаешь апдей
🏝 Kotlin 2.4.10-RC: что пофиксили перед стабильным релизом Вышел RC, фич нет, только баги из 2.4.0. Если придерживаешь апдейт из-за конкретной проблемы, есть смысл свериться со списком, прежде чем переходить на стабильную 2.4.10. Главное: - В Compose-компиляторе почистили проверку стабильности типов до и после каста в skip-логике. Ранее могла использоваться стабильность исходного типа вместо приведённого, отсюда лишние рекомпозиции. - На Native iosSimulatorArm64 падал IrTypeAliasSymbolImpl is already bound при работе с kotlinx.datetime.Instant — частая боль на симуляторе при тестах KMP. - В .main.kts-скриптах @file:CompilerOptions("-jvm-target", ...) с 2.4.0 тихо игнорировался, скрипт компилировался под JVM 1.8 RC обычно докатывается до стабильной версии без сюрпризов, но если у тебя завязано на симулятор или .main.kts-скрипты, лучше проверить сейчас, а не после апдейта. #Kotlin #KMP
5 494
8
Тестировщики, общий сбор! Что успеете сделать за 100 минут работы? Делимся идеей: можно запустить параллельные тесты приложен
Тестировщики, общий сбор! Что успеете сделать за 100 минут работы? Делимся идеей: можно запустить параллельные тесты приложения на разных устройствах, проверить производительность, нажатия и UI. И все это — бесплатно в Мобильной ферме от Selectel, потому что при регистрации вы получаете 100 бонусных минут в сервисе. Что дает Мобильная ферма Selectel: ● Парк из 50+ моделей от популярных до редких смартфонов на Android и iOS. ● Удобство — настройки сохраняются, пока устройство закреплено за вами вне зависимости от количества тестов и длины сессии. ● Безопасность — информация о ваших сессиях автоматически удаляется после завершения аренды. Регистрируйтесь и получите промокод на 100 минут при первом заказе: https://slc.tl/4h4fr Реклама. АО "Селектел". erid:2W5zFHrVwgd
2 228
9
🐱 Ghost Serializer: zero-allocation JSON-парсер для KMP через KSP2 Ghost Serializer — byte-first JSON-сериализатор для KMP с интеграцией в Ktor. Автор заявляет +66% throughput и -50% heap по данным HTTP Arena. Верифицировать цифры сложно: бенчмарки self-submitted, библиотека совсем новая. Но механика под капотом заслуживает внимания. KSP2 при компиляции ищет collision-free параметры для перфект-хеша полей каждого класса. В рантайме парсер берёт первые 4 байта JSON-ключа, упаковывает в 32-bit int и резолвит индекс поля одной арифметикой: ноль строковых сравнений, ноль аллокаций на lookup: val hash = ((key * multiplier + size) shr shift) and 1023 Required-поля трекаются через один Long-bitmask — проверить, что все обязательные поля пришли, это одна битовая операция на регистре. Hot path работает прямо с ByteArray / ByteReadChannel, минуя декодирование в строки. Подключается как дополнительный ContentNegotiation в Ktor, фоллбечится на kotlinx.serialization. Внедрять можно точечно, только на нагруженных эндпоинтах: install(ContentNegotiation) { ghost() json(Json { ignoreUnknownKeys = true }) } Для прода пока рано: библиотека только появилась, отзывов нету. Но техника интересная — это ровно то, что делают высокопроизводительные парсеры, только через KSP2 в компайл-тайм. 🔗 Статья от автора 🐱 GitHub #Kotlin #KMP #KSP
4 633
10
🐱 AboutLibraries 15.0.0 — attribution screen для Android и KMP приложений Attribution screen — не рекомендация, а требование
🐱 AboutLibraries 15.0.0 — attribution screen для Android и KMP приложений Attribution screen — не рекомендация, а требование лицензий. Apache 2.0 (Jetpack, Retrofit, OkHttp и др.) требует воспроизводить attribution notices в дистрибутиве, MIT — сохранять copyright notice. По факту любое приложение на стандартном стеке обязано это делать, но большинство либо тянет, либо собирает список вручную. Библиотека AboutLibraries закрывает это на уровне Gradle: плагин собирает метаданные всех зависимостей при сборке. Работает на всех KMP таргетах: Android, iOS, Desktop, Wasm, JS. Подключаешь CMP модуль, добавляешь LibrariesContainer — готовый экран атрибуции. На днях вышла версия 15.0.0 с поддержкой Compose 1.11.x, обновлённый UI, AGP 9, Kotlin 2.4. Есть strict mode: задаёшь список разрешённых типов лицензий, если в зависимостях появляется что-то нежелательное, сборка падает. Для проектов, где compliance важен, это меняет весь процесс. ‼️ ВАЖНО (Android): AGP 9.0 включает оптимизированный resource shrinking по умолчанию и может удалить aboutlibraries.json из ресурсов. Нужно добавить res keep-файл — подробности в README. 🐱 GtiHub AboutLibraries #Kotlin #KMP #ComposeMultiplatform #Anrooid #Desktop #JS #IOS #WASM #JVM
5 169
11
🏝 Kotlin 2.4.20-Beta1 Первая бета новой ветки 2.4.x. Из заметного: `klib`-инкрементальная компиляция включена по дефолту. Фи
🏝 Kotlin 2.4.20-Beta1 Первая бета новой ветки 2.4.x. Из заметного: `klib`-инкрементальная компиляция включена по дефолту. Фича появилась в 1.9.20, теперь без флага. При изменении части klib пересобирается только она. Debug-сборки в KMP-проектах должны стать заметно быстрее. Чистые сборки могут чуть замедлиться — если что, kotlin.incremental.native=false в gradle.properties. `StackTraceRecoverable` в stdlib. Новый интерфейс для кастомных исключений с нестандартными конструкторами: переопределяешь copyForStackTraceRecovery() — и kotlinx.coroutines корректно копирует такое исключение при восстановлении стека трейса. Актуально, если твои исключения принимают дополнительные аргументы и трейс через корутины раньше обрезался. @OptIn(ExperimentalStdlibCoroutineSupportApi::class), только JVM. Kotlin/Wasm: companion-объекты теперь инициализируются как на JVM, require() внутри @JsFun — ошибка компилятора, нужна миграция на @JsModule или import(). klib-инкрементальная по дефолту и Playwright вместо Karma — два изменения, которых я ждал. Если бета пройдёт без сюрпризов, дейли цикл в KMP-проектах ощутимо ускорится 🎯 🔗 kotlinlang.org 🐱 github.com/JetBrains/kotlin/releases/tag/v2.4.20-Beta1 #Kotlin #KMP
4 328
12
🐱 kempt — форматирование без Gradle, от автора Metro Zac Sweers (автор Metro, Anvil, Okio) выкатил небольшую CLI-утилиту для форматирования. Идея простая: Spotless крутится через Gradle. kempt — одна точка входа без оверхеда системы сборки. Поддерживает Kotlin через ktfmt, Java через google-java-format, Rust через cargo fmt, license headers, trailing whitespace. Конфиг в .kempt.toml. $ brew install ZacSweers/tap/kempt-fmt $ kempt init $ kempt install-hook $ kempt format|check Это проект-хобби, не боевой инструмент. Автор сам предупреждает. Но концепция правильная — форматирование должно жить вне системы сборки. #Tooling
4 252
13
‼️ Maven Central вводит лимиты на публикацию С 16 июня появятся предупреждения про превышение бесплатных лимитов на месяц, с
‼️ Maven Central вводит лимиты на публикацию С 16 июня появятся предупреждения про превышение бесплатных лимитов на месяц, с 11 августа 2026 начнётся реальное ограничение бесплатных публикаций. Пороги у 90 перцентиля: 1 167 файлов в месяц, 78 МБ суммарно, 7 релизов. Большинство open source разработчиков не заметят. Кто публикует много и часто — проверьте Usage Center уже сейчас. Лично мне интересно, как это ляжет на KMP-проекты. Один multi-target релиз — это десятки файлов на каждую платформу: sources, javadoc, pom, подписи. Sonatype говорит, что работает с JetBrains над смягчением. Посмотрим. 💬 Не станет ли это движением в стороны децентрализации от Maven Central? 🔗 Официальная документация о лимитах #Maven
3 017
14
🏝 15 лет с анонса Kotlin https://x.com/kotlin/status/2066920292996251865
🏝 15 лет с анонса Kotlin https://x.com/kotlin/status/2066920292996251865
5 802
15
🏝 Swift Export vs SKIE: что реально готово для iOS-интеропа сегодня Touchlab выкатил большой разбор с прямым сравнением двух путей экспорта KMP в iOS: новый Swift Export от JetBrains против связки Obj-C bridge + SKIE. Сравнивают не галочками фич, а скомпилированным выводом обоих подходов. Это сильная сторона текста, можно повторить и посмотреть сгенерированный код самому. Swift Export в Kotlin 2.4 дошёл до alpha и подтянул concurrency. Идея простая - генерировать нативный Swift API напрямую, без прослойки Objective-C. Swift Export и Obj-C export взаимоисключающие, поэтому выбор бинарный, смиксовать нельзя. Где Swift Export уже выигрывает: 👉 Nullable-примитивы маппятся напрямую в Int32?, без обёрток типа KotlinInt 👉 Сохраняет typealias и структуру пакетов 👉 Настоящие изолированные Swift-модули вместо одного umbrella-фреймворка Shared Где пока проигрывает, и это важно для прода: 👉 Generics по сути не поддерживаются. Только Kotlin-типы как параметры, value-типы Swift отваливаются, бывает что просто не компилится 👉 Sealed-классы теряют исчерпываемость. Никакого onEnum, обязательный default, компилятор не поймает новый кейс 👉 Extension-функции деградируют в static-функции с явным receiver. Совсем не по-свифтовому 👉 Всё помечается final, кросс-языкового наследования нет Вывод авторов - для нативного iOS UI сегодня по-прежнему SKIE, а Swift Export годится для пет-проектов и небольших MVP. Cтатью писал Touchlab, авторы SKIE и драйверы KMP в сообществе. По фактам они правы, Swift Export пока alpha и дыры реальные. Но «SKIE definitive choice» это уже их акцент, читайте с этой поправкой. Направление от JetBrains очевидное - KMP-проекты без Objective-C под капотом. Вопрос только в сроках, слишком уж долго они топили за поддержку Obj-C интеропа и игнорировали Swift. #Kotlin #KMP #Swift #IOS
5 668
16
🏝 В Kotlin 2.4.0. улучшили compile time константы // Не работало в Koltin 2.3.X // В Koltin 2.4.0 теперь можно const val TAG = "MyClass".lowercase() В Kotlin 2.4.0 экспериментально добавили поддержку строковых функций stdlib в compile-time константах: .lowercase(), .uppercase(), .trim(). Плюс операции с unsigned-типами и вычисление .name у enum-констант и KCallable. Чтобы было понятно, какие функции обрабатываются компилятором, ввели аннотацию @IntrinsicConstEvaluation. Пока аннотацию расставили не везде. В следующих релизах добавят остальное. Включается флагом компилятора: kotlin { compilerOptions { freeCompilerArgs.add("-Xintrinsic-const-evaluation") } } #Kotlin #Kotlin240
5 534
17
Митап для Java-разработчиков — 18 июня, Екатеринбург В программе 2 доклада от бэкендеров Яндекс Вертикалей про неочевидные пр
Митап для Java-разработчиков — 18 июня, Екатеринбург В программе 2 доклада от бэкендеров Яндекс Вертикалей про неочевидные продакшн-баги в Java и Spring, переход на Temporal: 🟥 NullPointerException на инициализированном final-поле. Как такое вообще возможно? Расскажет Михаил Черноскутов из Яндекс Путешествий 🟥Переезд со scheduler-сервисов на Temporal. Зачем он понадобился и какие были подводные камни, ответит Герман Михайлов из Яндекс Недвижимости После выступлений участников ждёт «Громкий вопрос» — интеллектуальная игра по мотивам одноимённого шоу. А также нетворкинг с коллегами и единомышленниками. 🗓18 июня (четверг), 18:00 — 22:00 📍 Ельцин Центр, Екатеринбург → Подробности и регистрация #реклама
2 301
18
Уже попробовали новый синтаксис создания коллекций?
4 567
19
Обновились на Kotlin 2.4.0?
4 503
20
⭐️ Вышла Gemma 4 12B и она запускается локально на 16GB RAM. Понимает текст, картинки и аудио в одной модели До этого мультим+1
⭐️ Вышла Gemma 4 12B и она запускается локально на 16GB RAM. Понимает текст, картинки и аудио в одной модели До этого мультимодальные модели работали так: картинку сначала обрабатывает отдельный блок, аудио тоже через свой. Каждый такой блок ест память и добавляет задержку. Gemma 4 12B делает это без посредников. Картинка и звук идут прямо в модель. Один пайплайн для всего. На практике это значит меньше памяти под инфраструктуру и выше скорость отклика. Модель запускается на железе с 16GB VRAM (не потребляет, а столько оперативки в компе надо) или unified memory, то есть MacBook Pro с M3 тянет без проблем. Apache 2.0, весы на Hugging Face и Kaggle, запуск через Ollama или LM Studio. Задачи, которые это открывает: 👉 локальный агент с пониманием скриншотов и голоса 👉 анализ изображений без отправки данных в облако 👉 голосовой ввод прямо в агентный пайплайн. Для тех, кто строит агентов с приватными данными или просто не хочет зависеть от API-ключей и облачных лимитов — это рабочий вариант. Мне интересно попробовать именно в связке с локальным агентом: один инстанс, текст плюс скриншот плюс аудио, без облака. Посмотрим, насколько это работает на практике, а не только на бенчмарках. 🔗 Оф анонс #AI #Gemma
406