Статья с инструкцией по переходу на Kotlin 2.0:
👉 K2 компилятор
👉 Gradle
👉 IDE K2 плагин
👉 Плагины компилятора
👉 Compose
👉 Поддержка сторонних библиотека
Вывод: изменения компилятора огромные и инструментов что завязаны на анализ кода надо вплотную заниматься поддержкой нового компилятора
#kotlin2 #k2
👉 K2 компилятор
👉 Gradle
👉 IDE K2 плагин
👉 Плагины компилятора
👉 Compose
👉 Поддержка сторонних библиотека
Вывод: изменения компилятора огромные и инструментов что завязаны на анализ кода надо вплотную заниматься поддержкой нового компилятора
#kotlin2 #k2
👍12🤯3
Статья (10 мин) с разбором отличий K2 компилятора от версии в Kotlin 1.X и за счет чего получилось достичь ускорения сборки проектов до 2 раз 🤯
#k2 #подкапотом @kotlin_broadcast
#k2 #подкапотом @kotlin_broadcast
❤25🔥7👍5
❤17👍9
Интересное сравнение как много Java потоков используют разные реализации сетевых клиентов и оберток над ними.
На Android, JVM и Native вы можете использовать реализацию Ktor CIO - полностью асинхронная и от и до на корутинах, правда поддерживает HTTP/1.x
#производительность #ktor
На Android, JVM и Native вы можете использовать реализацию Ktor CIO - полностью асинхронная и от и до на корутинах, правда поддерживает HTTP/1.x
#производительность #ktor
👍25❤2
Forwarded from Android Broadcast
Google официально объявила о поддержке Kotlin Multiplatform командой Android, а именно:
👉 Поддержку Android в KMP берет на себя
👉 Jetpack библиотеки будут все к больше поддерживать разные таргеты
👉 Появится поддержка WASM
👉 Приложения от Google будут использовать KMP для шаринга до логики
👉 Инженеры Google контрибьютят в KMP. Например, ускорили компиляцию нативного кода
#android #kmp #googleio24
👉 Поддержку Android в KMP берет на себя
👉 Jetpack библиотеки будут все к больше поддерживать разные таргеты
👉 Появится поддержка WASM
👉 Приложения от Google будут использовать KMP для шаринга до логики
👉 Инженеры Google контрибьютят в KMP. Например, ускорили компиляцию нативного кода
#android #kmp #googleio24
🔥117👏14🎉9👍1
Мы строили, строили и построили первый оффлайн митап сообщества Mobile Broadcast в Минске!
Вас ждет 2 доклада по актуальным темам:
✔️ Асинхронное управление состоянием и как сделать просто. Узнаете важность правильной работы с состоянием, к чему приводит некорректная работа с ним и как избежать этих ошибок!
✔️ Как выбрать навигацию для Compose в современном мире (и нет Jetpack Compose не является лучшей даже с выходом версии 2.8.0). Автор поделиться своей историей выбора навигации, сравнит популярные решения и сделаем выводы вместе
Участие бесплатное по предварительной регистрации, а обсудить все детали и не пропускать встречи минского сообщества поможет чат Mobile Broadcast Минск
#минск #митап #анонс
Вас ждет 2 доклада по актуальным темам:
Участие бесплатное по предварительной регистрации, а обсудить все детали и не пропускать встречи минского сообщества поможет чат Mobile Broadcast Минск
#минск #митап #анонс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🤯3❤1
Forwarded from iOS Broadcast (Андрей Зонов)
Очередной раз удивляюсь в каком пузыре мы находимся, вокруг все говорят про Swift и Kotlin и кажется что второй захватил уже вообще все. Но, судя по индексу популярности ЯП:
Можно отметить что корректно смотреть на рост/падение, а не текущее место. Действительно Kotlin вырос на 14 позиций, а Swift упал на 1 позицию, уступив место MathLab. Но, Fortran вырос на 9 позиций и занял 10 место 🤯 . Огромный мир инженерного и научного программирования, который мы не замечаем
Please open Telegram to view this post
VIEW IN TELEGRAM
👍34🤯9
Чтобы попробовать Kotlin 2.0 надо будет переезжать на библиотеки с его поддержкой:
👉 Google KSP
👉 KotlinX Coroutines с поддержкой 2.0 я не нашел, но может и не нужна спец версия
👉 KotlinX Serialiazation 1.7.0-RC с поддержкой Kotlin 2.0
👉 Отдельный Gradle плагин для Compose (Jetpack и Multiplatform) с поддержкой Kotlin 2.0
👉 KAPT поддерживает Kotlin 2.0 в экспериментальном режиме
👉 Начиная с IntelliJ IDEA 2023.3 and Android Studio Iguana (2023.2.1), есть поддержка Kotlin 2.0
👉 SQLDelight работает
👉 SKIE от Touchlab тоже имеет поддержку Kotlin 2.0
Полное руководство по миграции на компилятор K2 и последствия перехода описала JetBrains в документации
Полный список всех плагинов компилятора и поддержку ими K2 смотрите тут
#kotlin2 #k2
👉 Google KSP
👉 KotlinX Coroutines с поддержкой 2.0 я не нашел, но может и не нужна спец версия
👉 KotlinX Serialiazation 1.7.0-RC с поддержкой Kotlin 2.0
👉 Отдельный Gradle плагин для Compose (Jetpack и Multiplatform) с поддержкой Kotlin 2.0
👉 KAPT поддерживает Kotlin 2.0 в экспериментальном режиме
👉 Начиная с IntelliJ IDEA 2023.3 and Android Studio Iguana (2023.2.1), есть поддержка Kotlin 2.0
👉 SQLDelight работает
👉 SKIE от Touchlab тоже имеет поддержку Kotlin 2.0
Полное руководство по миграции на компилятор K2 и последствия перехода описала JetBrains в документации
Полный список всех плагинов компилятора и поддержку ими K2 смотрите тут
#kotlin2 #k2
👍18🔥4
Будет очень интересно узнать ваши впечатления от обновления на Kotlin 2.0 в особенности скорость работы IDE и компиляции кода. Делитесь в комментариях
👍3
Что нового в Koltin 2.0 (полный список изменений тут)
👉 K2 компилятор: быстрее и единый под все таргеты
👉 Smart Cast теперь понимает больше сценариев
👉 При компиляции Kotlin Multiplatform исходников отдельно этапы проходят для common и platform кода
👉 JVM Генерация лямбд с использованием invokedynamic
👉 Улучшения в Kotlin/Native для iOS
👉 Улучшения скорости работы и интеропа с JS в Kotlin/WASM
👉 Улучшения в Gradle (сделаю отдельный пост)
Стандартная библиотека
👉 Метод enumEntries<T>() стабильный и приходит на замену enumValues<T>()
👉 Стабильный AutoCloseable
👉 Часть API перенесли в Common
Полный список всех плагинов компилятора и поддержку ими K2 смотрите тут
#kotlin2 #k2
👉 K2 компилятор: быстрее и единый под все таргеты
👉 Smart Cast теперь понимает больше сценариев
👉 При компиляции Kotlin Multiplatform исходников отдельно этапы проходят для common и platform кода
👉 JVM Генерация лямбд с использованием invokedynamic
👉 Улучшения в Kotlin/Native для iOS
👉 Улучшения скорости работы и интеропа с JS в Kotlin/WASM
👉 Улучшения в Gradle (сделаю отдельный пост)
Стандартная библиотека
👉 Метод enumEntries<T>() стабильный и приходит на замену enumValues<T>()
👉 Стабильный AutoCloseable
👉 Часть API перенесли в Common
Полный список всех плагинов компилятора и поддержку ими K2 смотрите тут
#kotlin2 #k2
🔥24🏆4❤3
Улучшения Gradle в Kotlin 2.0:
👉 Новое Gradle DSL для конфигурации опций компиляции для всех тасков мультиплатформенных проектов
👉 Compose Runtime теперь часть Kotlin репозитория и теперь всегда будет с актуальными версиями. Из-за этого появился отдельный Gradle Compose плагин для Jetpack и Multiplatform Compose
👉 Теперь в атрибутах при публикации будет указываться для какого JVМ варианта сделана библиотека: Android, Standrat JVM или NO JVM
👉 Улучшена работа с зависимостями в Kotlin/Native
👉 Разграничение какие API можно вызывать в разных уровнях DSL
👉 Kotlin/Native компилятор будет загружать только когда он нужен для сборки, а не только если Kotlin/Native используется в проекте
👉 Минимальная поддерживаемая версия Android Gradle Plugin поднята до 7.1.3
👉 Gradle опция
👉 Вывод отчета сборки в JSON формате
👉 kapt наследует конфигурацию из родителського Gradle проекта
#gradle #kotlin2
👉 Новое Gradle DSL для конфигурации опций компиляции для всех тасков мультиплатформенных проектов
👉 Compose Runtime теперь часть Kotlin репозитория и теперь всегда будет с актуальными версиями. Из-за этого появился отдельный Gradle Compose плагин для Jetpack и Multiplatform Compose
👉 Теперь в атрибутах при публикации будет указываться для какого JVМ варианта сделана библиотека: Android, Standrat JVM или NO JVM
👉 Улучшена работа с зависимостями в Kotlin/Native
👉 Разграничение какие API можно вызывать в разных уровнях DSL
👉 Kotlin/Native компилятор будет загружать только когда он нужен для сборки, а не только если Kotlin/Native используется в проекте
👉 Минимальная поддерживаемая версия Android Gradle Plugin поднята до 7.1.3
👉 Gradle опция
kotlin.experimental.tryNext
для использования следующей dev версией Kotlin за текущей👉 Вывод отчета сборки в JSON формате
👉 kapt наследует конфигурацию из родителського Gradle проекта
#gradle #kotlin2
🔥12
Экспериментальный Kotlin плагин "Power-assert compiler plugin" для улучшения опыта отладки, предоставляя больше информации при ошибках с данными из контекста. Предназначено для написания тестов, что позволит вам понять причину провала теста без использования сложны assert библиотек
#тестирование @kotlin_broadcast
#тестирование @kotlin_broadcast
🔥37
Kotlin Multiplatform Broadcast
Экспериментальный Kotlin плагин "Power-assert compiler plugin" для улучшения опыта отладки, предоставляя больше информации при ошибках с данными из контекста. Предназначено для написания тестов, что позволит вам понять причину провала теста без использования…
Пример лога для провалившегося теста
🔥102
Хочу взять 5 Kotlin проектов на тесты и провести бенчмарк между версия 1.9.X и Kotlin 2.0. Предлагайте Open Source который стоит рассмотреть
🔥35
Только дошел посмотреть Keynote Kotlin Conf... А вы посмотрели?