Forwarded from Android Broadcast
Demeter хорош тем, что он не заменяет привычные инструменты анализа производительности, а дополняет собираемую информацию для лучшего понимания скорости работы кода приложения. Также всю информацию можно увидеть прямо на экране устройства.
Инструмент имеет плагинную архитектуру и открытый исходный код, что позволяет вам сделать собственные расширения. Из коробки доступны плагины:
• Замер времени выполнения методов и добавление большей информации для профайлера
• Подсчет количества рекомпозиций в Composable функциях
• Время инициализации зависимостей из Dagger графа
(предлагайте в комментариях, какие замеры было бы полезно сделать в ваших приложениях, а я буду делиться своими)
Demeter может работать через плагин Kotlin компилятора (только с исходным кодом в вашем проекте) и/или через модификацию байткода, где уже можно следить за кодом в подключённых библиотеках без исходного кода. Подробнее можно ознакомиться в статье.
Измерять производительность на дебаг билдах смысла не имеет, так как там много лишнего, а вот когда проходит регресс или через автотесты замерять, то как раз Demeter тут будет полезен, так как важна оценка в одинаковых условиях.
Задавайте свои вопросы по библиотеке, и ещё сделаем отдельное интервью про производительность приложений и тем как за ней постоянно следить, выдерживая заданную планку качества работы.
#android #производительность #opensource
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
🔥 На конференции по Аврора ОС объявили о поддержки 🏝 Kotlin Multiplatform и в скоро будущем будет работать и ⚙️ Compose Multiplatform
Как только станет доступно попробовать - подключу в свой проект Frame.io
Источник - @AuroraDevelopers
#kmp #аврораос
Как только станет доступно попробовать - подключу в свой проект Frame.io
Источник - @AuroraDevelopers
#kmp #аврораос
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍46
На сайте издательства Питер доступна бумажная и электронные версии. Скоро устрою розыгрыш пару таких книг, так что подождите немного с покупкой
Скриншоты оглавления в комментариях 🔽
#kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍83
Коллеги из ОМП поделились со мной презентаций по KMP. Что самое важное
👉 Появится Gradle плагин для добавления Aurora таргета в KMP проекты
👉 Будут сделаны QT Binding чтобы пользоваться нативными API из KMP кода
👉 ОМП сделают версии популярных KMP библиотек под Аврора с публикацией в собственном Maven репо
👉 Compose Multiplatform в работе и покажут в 2026
#kotlin #аврораос
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍20
В Kotlin 2.2 в Beta статусе появится фича - Context parametrs, которая заменяет Context receivers (будут удалены в Kotlin 2.3)
// Пример Context parameters из Kotlin 2.2
interface Type {
context(analysisScope: AnalysisScope)
val isNullable: Boolean = ...
}
context(analysisScope: AnalysisScope)
fun Type.equalTo(other: Type): Boolean = ...
context(_: AnalysisScope)
val Type.isBoolean: Boolean get() = this.equalTo(BuiltIns.Boolean)
Всем разработчикам рекомендуется выполнить миграцию (будет автоматическая замена из IDE)
Делитесь в комментариях своими сценариями применения новой возможности языка
#kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28🔥1
Kotlin Multiplatform Broadcast
Чем отличается Context Parametr от Receiver Type в Extension fun
👉 Context Parameter может быть больше чем один
👉 Context Parameter позволяет задавать имена. Имя context parametr _ - это аналог использования this
Заявляется API compatibility при миграции на Context Parameter
#kotlin
👉 Context Parameter может быть больше чем один
👉 Context Parameter позволяет задавать имена. Имя context parametr _ - это аналог использования this
Заявляется API compatibility при миграции на Context Parameter
un <E> Raise<E>.foo() = ...
// станет
context(_: Raise<E>) fun <E> foo() = ...
Пора сделать разбор и выложить видео
#kotlin
👍38
Из самого важного:
👉 Новый режим будет по умолчанию включен в Idea 2025.1 (и Android Studio Narwhal)
👉 K2 позволяет ускорить работу c Kotlin в IDE
👉 Новые фичи языка в IDE уже только поддерживают K2 режим
По тем плагинам что использую я для Android и KMP разработки в Android Studio Meerkat FD 2024.3 уже все работают с K2. Пробуйте и вы, а затем делитесь мнением в комментариях
#kotlin #k2 #idea
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13