JetBrains выпустили K2 Mode в IntelliJ IDEA 2025.1 — и это не просто галочка в настройках. Это новый режим анализа кода на Kotlin, который работает на движке K2 Compiler Frontend.
Зачем это нужно?
👉 Повышенная производительность при анализе кода
👉 Более точные инспекции и автодополнение
👉 Новый механизм лучше работает с современными фичами Kotlin
👉 Путь к улучшенной поддержке multiplatform и компиляции
В статье JetBrains делятся историей создания K2 Mode: как он развивался, с какими проблемами сталкивались, и почему переход на K2 — это стратегический шаг.
#kotlin #k2 #idea
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26
Отмена корутины не останавливает операцию мгновенно, а помечает корутину как "требующую остановки". Этот подход называется cooperative cancellation. Остановка корутины произойдет при вызове suspend-функции или проверке ее статуса через isActive. Специальное исключение CancellationException используется для уведомления всех связанных корутин о необходимости отмены.
Больше фактов об отмене корутины в статье🏝 Разбор как устроена отмена выполнения корутины (EN, 3 мин) или по альтернативной ссылке. Также полезно ознакомиться с официальной документацией.
#kotlin #coroutines
Больше фактов об отмене корутины в статье
#kotlin #coroutines
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍66🔥1
(все видео курса в комментариях к видео)
#kotlin #ktor #server
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43
Концепция строится вокруг модульной структуры для разделения API и реализации. Для DI по умолчанию используется kotlin-inject-anvil, для Presenter - Molecule, но можно заменить. UI слой может быть написан на удобном для вас UI фреймворке.
Для настройки требуется подключение Gradle плагина
На момент написания поста доступна версия 0.0.1
#kotlin #kmp #android #ios #web #desktop #jvm #native
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25
Используете Decompose?
Anonymous Poll
21%
Да
7%
Пробовал(а), не зашло
29%
Не пробовал(а)
12%
Не знаю что это
22%
Не использую
1%
Другой вариант (пиши в комментах)
8%
Не участвую
👍11
👉 equals() и hashCode() в Array не сравнивает содержимое массива
👉 Array - модифицируемый тип, могут изменить данные снаружи
Рекомендуется использовать List или ImmutableList
Источник тут (альтернативная ссылка)
#kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍90
Forwarded from Compose Broadcast
Что нового:
👉 Переход на K2
👉 Мультиплатформенные реализации BackHandler и PredictiveBackHandler
👉 Улучшения в тестах
👉 Поддержка вариативных шрифтов на всех платформах
👉 Clipboard API заменяет ClipboardManager для работы c буфером обмена на всех платформах
👉 Множество улучшений в Compose/iOS
👉 На Windows улучшили производительность и размер инсталятора
Множество других улучшений, которые надо разбирать отдельными постами.
#compose #k2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍50
Forwarded from Compose Broadcast
🔥⚙️ Compose iOS теперь Stable
Самый громкий и важный анонс в истории Compose Multiplatform с выходом версии 1.8.0
Что именно готово для продакшен применения
👉 Все основные фичи из Jetpack Compose работают на iOS
👉 Типобезопасная навигация с поддержкой deep link
👉 Гибкое управление ресурсами
👉 Поддержка iOS Accessibility API
👉 Ощущения от UI приложения как нативного (скрол, редактирование текста, drag-and-drop, адаптивный UI, навигация жестами и пр)
👉 Производительность UI на Compose близка к SwiftUI, но пока немного уступает
Новая эра мобильной разработки уже тут!
#compose #ios
Самый громкий и важный анонс в истории Compose Multiplatform с выходом версии 1.8.0
Что именно готово для продакшен применения
👉 Все основные фичи из Jetpack Compose работают на iOS
👉 Типобезопасная навигация с поддержкой deep link
👉 Гибкое управление ресурсами
👉 Поддержка iOS Accessibility API
👉 Ощущения от UI приложения как нативного (скрол, редактирование текста, drag-and-drop, адаптивный UI, навигация жестами и пр)
👉 Производительность UI на Compose близка к SwiftUI, но пока немного уступает
Новая эра мобильной разработки уже тут!
#compose #ios
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍132
JetBrains рассказала про статус и будущее Kotlin Multiplatform для Web разработки. Сейчас в работе:
👉 Улучшении поддержки в IDE
👉 Достичь Beta статус для Kotlin/Wasm и Compose Multiplatform для Web
👉 Режим совместимости со старыми браузерами для Compose Multiplatform
👉 Избавиться от большинства ограничений интеропа в Kotlin/JS
👉 Поддержать современны стандарты JavaScript в Koltin/JS
#kotlin #web #wasm #js
Please open Telegram to view this post
VIEW IN TELEGRAM
👍49
Зачастую вижу код
val list: MutableList<Value> = mutableListOf()
list.add(value0)
if(...) list.add(value1)
Вместо этого рекомендую использовать buildList
val list: List<Value> = buildList {
add(value0)
if(...) add(value1)
}
Плюсом такого подхода - отсутствие работы с мутируемой коллекцией
Есть аналоги для других типов коллекций: buildSet и buildMap
#kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍172
Media is too big
VIEW IN TELEGRAM
ExoQuery - Kotlin DSL для работы с базой данных. Есть поддержка разных БД. Больше про возможности смотрит в видео
#kotlin #sql #dsl
// Пример запроса
capture.select {
val p: Person = from(people)
val a: Address = join(addresses) { a -> a.personId == p.id }
Data(p.name, a.city)
}
#kotlin #sql #dsl
👍43
Forwarded from Kotlin Russia news (Alexander Nozik)
Итак, момент, которого мы долго ждали, случился!
Первый за этот год, да и за несколько последних лет Kotlin митап случится 30 мая в ВШЭ. Организатором выступает ФКН ВШЭ.
https://cs.hse.ru/kotlinmeetup/
18:00-18:10, Александр Нозик, Открытие митапа
18:10-19:10, Яна Седова, Горячие и холодные потоки в Kotlin Flow
19:10-20:10, Александр Соколинский, Пополнение в семье kotlinx: зачем нам этот ваш kotlinx.fuzz?
Для участия обязательно зарегистрироваться. Количество мест ограничено. Поэтому просьба не откладывать регистрацию если вы хотите прийти и не регистрироваться если вы не планируете приходить.
Самое замечательное в том, что планируется не один митап, а серия. Так что не забываем отправлять новые заявки в форму. Даже если вам кажется, что это не очень интересно.
Первый за этот год, да и за несколько последних лет Kotlin митап случится 30 мая в ВШЭ. Организатором выступает ФКН ВШЭ.
https://cs.hse.ru/kotlinmeetup/
18:00-18:10, Александр Нозик, Открытие митапа
18:10-19:10, Яна Седова, Горячие и холодные потоки в Kotlin Flow
19:10-20:10, Александр Соколинский, Пополнение в семье kotlinx: зачем нам этот ваш kotlinx.fuzz?
Для участия обязательно зарегистрироваться. Количество мест ограничено. Поэтому просьба не откладывать регистрацию если вы хотите прийти и не регистрироваться если вы не планируете приходить.
Самое замечательное в том, что планируется не один митап, а серия. Так что не забываем отправлять новые заявки в форму. Даже если вам кажется, что это не очень интересно.
cs.hse.ru
Митап по Kotlin
👍23