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 620
مشترکین
-124 ساعت
+47 روز
-3030 روز
در حال بارگیری داده...
کانالهای مشابه
ابر برچسبها
اشارات ورودی و خروجی
---
---
---
---
---
---
جذب مشترکین
ژوئیه '26
ژوئیه '26
+22
در 0 کانالها
ژوئن '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 کانالها
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 10 ژوئیه | 0 | |||
| 09 ژوئیه | +3 | |||
| 08 ژوئیه | +1 | |||
| 07 ژوئیه | +3 | |||
| 06 ژوئیه | +7 | |||
| 05 ژوئیه | +4 | |||
| 04 ژوئیه | +1 | |||
| 03 ژوئیه | +1 | |||
| 02 ژوئیه | +1 | |||
| 01 ژوئیه | +1 |
پستهای کانال
🏝 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
| 2 | 🔴 Начинаем прямой эфир про обсуждение надо Kotlin Multiplatform? Я планирую перейти в банке на него, а вот гость эфира - отказались по полной! Все будет только на 🪙 Boosty | 659 |
| 3 | Стали доступны записи докладов с KotlinConf'26 https://youtube.com/playlist?list=PLlFc5cFwUnmz2P7lOnSLBBULWXGv-sJWz | 8 |
| 4 | 🏝 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 | 2 609 |
| 5 | Тестировщики, общий сбор! Что успеете сделать за 100 минут работы?
Делимся идеей: можно запустить параллельные тесты приложения на разных устройствах, проверить производительность, нажатия и UI. И все это — бесплатно в Мобильной ферме от Selectel, потому что при регистрации вы получаете 100 бонусных минут в сервисе.
Что дает Мобильная ферма Selectel:
● Парк из 50+ моделей от популярных до редких смартфонов на Android и iOS.
● Удобство — настройки сохраняются, пока устройство закреплено за вами вне зависимости от количества тестов и длины сессии.
● Безопасность — информация о ваших сессиях автоматически удаляется после завершения аренды.
Регистрируйтесь и получите промокод на 100 минут при первом заказе: https://slc.tl/4h4fr
Реклама. АО "Селектел". erid:2W5zFHrVwgd | 2 228 |
| 6 | 🐱 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 | 3 545 |
| 7 | 🐱 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 | 4 538 |
| 8 | 🏝 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 | 3 984 |
| 9 | 🐱 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 | 3 951 |
| 10 | ‼️ 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 | 2 743 |
| 11 | 🏝 15 лет с анонса Kotlin https://x.com/kotlin/status/2066920292996251865 | 5 582 |
| 12 | 🏝 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 485 |
| 13 | 🏝 В 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 522 |
| 14 | Митап для Java-разработчиков — 18 июня, Екатеринбург
В программе 2 доклада от бэкендеров Яндекс Вертикалей про неочевидные продакшн-баги в Java и Spring, переход на Temporal:
🟥 NullPointerException на инициализированном final-поле. Как такое вообще возможно? Расскажет Михаил Черноскутов из Яндекс Путешествий
🟥Переезд со scheduler-сервисов на Temporal. Зачем он понадобился и какие были подводные камни, ответит Герман Михайлов из Яндекс Недвижимости
После выступлений участников ждёт «Громкий вопрос» — интеллектуальная игра по мотивам одноимённого шоу. А также нетворкинг с коллегами и единомышленниками.
🗓18 июня (четверг), 18:00 — 22:00
📍 Ельцин Центр, Екатеринбург
→ Подробности и регистрация
#реклама | 2 301 |
| 15 | Уже попробовали новый синтаксис создания коллекций? | 4 567 |
| 16 | Обновились на Kotlin 2.4.0? | 4 503 |
| 17 | ⭐️ Вышла 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 |
| 18 | 💉 Koin Compiler Plugin 1.0.0 вышел в stable и переводит проверку графа зависимостей на этап компиляции.
Плагин проверяет граф на трёх уровнях:
👉 смотрит каждый модуль в изоляции
👉 собирает полный граф при startKoin<T>()
👉 проверяет каждый call-site, включая get<T>(), inject<T>(), koinViewModel<T>() и вызовы внутри @Composable. Если проект собрался, граф валиден.
Работает с DSL и аннотациями, поддерживает KMP. Миграция с koin-ksp-compiler не ломает существующие аннотации. Требует Kotlin 2.3.20+ и Koin 4.2.1+.
‼️ ВАЖНО: классический DSL-стиль single { MyClass(get()) } не даёт полной проверки. Полная compile safety работает с single<MyClass>() или аннотациями (@Single, @Factory, @KoinViewModel).
По умолчанию strictSafety включён на модуле, где живёт startKoin: compileKotlin на нём перезапускает проход на каждой сборке. Библиотечные модули остаются инкрементальными. Непонятно как устроена работа со скоупами.
Koin использую давно, и тест с checkModules() всегда был немного в стороне от основного пайплайна. Теперь это просто часть компиляции. Смущает только порог Kotlin 2.3.20: если проект ещё не обновился, придётся ждать.
🔗 Источник - оф блог Kotin
#android #kotlin #koin #di | 6 178 |
| 19 | 🏝 Вышел Kotlin 2.4.0 Stable
👉 Язык: стабильные контекстные параметры, явные backing-поля и несколько нововведений для use-site таргетов аннотаций.
👉 Стандартная библиотека: стабилизация UUID API
👉 Kotlin/JVM: поддержка Java 26 и аннотации в метаданных включены по умолчанию.
👉 Kotlin/Native: поддержка SPM как зависимостей, обновления Swift export и CMS GC включён по умолчанию.
👉 Kotlin/Wasm: инкрементальная компиляция включена по умолчанию и поддержка WebAssembly Component Model.
👉 Совместимость с Gradle 9.5.0.
👉 Компилятор Kotlin: более согласованное поведение inline-функций при компиляции в .klib.
#Kotlin #Kotlin240 | 6 739 |
| 20 | 🏝 Попробовал Kotlin Toolchain - CLI для сборки проектов на Kotlin. Пока он практически бесполезен... По сути переименовали билд систему Amper и вот вам Toolchain для Kotlin. Кажется ему до полезности еще очень долго.
🏝 Если успели попробовать - делитесь впечатлениями
#kotlin | 5 573 |
