Android Good Reads
3.88K subscribers
344 photos
13 videos
1 file
2K links
Самые интересные статьи, видео и новости, связанные с Android разработкой. Не больше трёх материалов в день.

Автор канала: @Lamprof

Размещение рекламы: @tanyasanovna
Download Telegram
Gradle Analytics Plugin

Gradle Analytics Plugin – плагин, генерирующий много различной аналитики по вашему билду:
Время выполнения фаз билда
📊Количество файлов, строк кода и тестовое покрытие в разрезе по модулям
🧱Cache hit rate
🏎Parallel execution rate
🌳Граф зависимости модулей друг от друга
🔥Heatmap по частоте сборки отдельных модулей за определенный период времени
Nullability в Java и Kotlin

Команда Kotlin опубликовала новый гайд в документации, который подробно объясняет различия в работе с nullability в Java и Kotlin на примере частых операций.
KMM вышел в Beta

Сегодня команда Kotlin официально объявила про переход Kotlin Multiplatform Mobile из Alpha в Beta статус. Вот почему это важно:
- Можно спокойно тащить в прод. До стабильного релиза больше не ожидается фундаментальных изменений, которые могут что-то сломать в вашем проекте, только багфиксы и улучшение UX.
- Android выпустили первые официальные мультиплатформенные Jetpack библиотеки: Collections и DataStore.

📹Детальное видео с анонсом и юзкейсами новых пользователей KMM
This media is not supported in your browser
VIEW IN TELEGRAM
Обновилась документация по работе с изображениями в Compose

- Как загружать изображения из интернета
- Растровые изображения против векторных
- Material Icons
- Работа со свойствами Image Composable
- Custom painter objects
- Оптимизация перфоманса при работе с изображениями
Релиз kotest 5.5.0

Kotest – популярный мультиплатформенный тестовый фреймворк. На днях вышла его новая версия:

- Новые матчеры: shouldBeCloseTo, shouldMatch, shouldMatchAll, shouldMatchAny
- Поддержка тестов корутин в Kotlin/Native
- Улучшенна поддержка Arrow
Новый rangeUntil оператор в Kotlin

В Kotlin 1.7.20 под флагом доступен новый оператор ..<, с помощью которого можно определить рендж, не включающий правую границу. Стабильная версия оператора подъедет где-то в районе Kotlin 1.9.
Выпуск подкаста «Запуск Завтра» про историю Kotlin с Андреем Бреславом

Если у вас есть свободные 40 минут, то очень рекомендую потратить их на этот подкаст. Андрей Бреслав, создатель Kotlin, очень бодро рассказывает про раннюю историю его разработки и то, как язык в итоге появился на Android.
Миграция на Gradle 8.0

- В Gradle 8.0 задепрекейтят Transform API, который очень сильно влиял на время билда
- Вместо него предлагается использовать новые Artifacts API и Instrumentation API
- Artifacts API дает доступ к файлам и директориям, которые создаются в процессе сборки
- Instrumentation API дает доступ к анализу и изменениям скомпилированных классов
- Проверьте, что ваши плагины готовы к переезду на новые API, иначе не сможете мигрировать приложение на новый Gradle
Серия статей про Kotlin Multiplatform от Premise

Команда Premise, работающая с KMM уже полтора года, опубликовала серию статей про свой опыт с упором на сценарий интеграции в существующие приложения:

🤔Детальный разбор того, как они используют KMM: локальное окружение, CI/CD, обучение команды, эксперименты
🧱Структура и настройка проекта
🚰CI pipeline на GitHub Actions
Подробный разбор контекстных ресиверов

В Kotlin 1.6.20 появился прототип новой крупной языковой фичи – контекстные ресиверы. Ее основная задача – заменить собой extension functions в тех случаях, когда их не хватает.

Marcin Moskala написал самую подробную статью про фичу, что я видел, с деталями про кейсы использования и ограничения.
JSON Hero – супер мощный визуализатор JSON в браузере

JSON Hero – сайт, который рендерит JSON файлы в удобном для чтения представлении. Например, сразу подгружает изображения и url preview, показывает дату сразу во всех форматах, проводит валидацию файла и делает многое другое.
Data Objects в Kotlin 1.7.20

На этой неделе в канале много материалов про новые языковые фичи в Kotlin. Держите еще одно видео – про Data Objects, прототип которых появился в версии 1.7.20.
Сравнение производительности Moshi и kotlinx-serialization

- Производительность Moshi и Serialization практически одинаковы
- Версия Moshi, работающая с помощью рефлексии, самая медленная, ее надо избегать
- Интеграция Serialization с Okio хуже, чем в Moshi, и ухудшает перфоманс декодирования
Подробный гайд по тестированию in-app subscriptions

Ребята из RevenueCat подготовили большой гайд про то, как верифицировать работу всех сценариев работы с подписками.
Как с помощью Kover сгенерировать бейдж с code coverage

- Kover – Gradle плагин, оценивающий процент покрытия Kotlin кода тестами
- В статье разбирается, как правильно сконфигурировать Gradle таску и GitHub Action, чтобы добавить в README проекта бейдж с code coverage