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

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

Размещение рекламы: @tanyasanovna
Download Telegram
Недавно Google выпустил гайд по тому, как правильно подходить к архитектуре UI слоя. Держите хорошую статью с обзором сильных и слабых сторон этих рекомендаций. И помните, что архитектура должна в первую очередь не соответствовать написанным кем-то универсальным правилам, а решать ваши специфичные задачи.
https://www.droidcon.com/2022/01/14/sending-viewmodel-events-to-the-ui-in-android/
Вместе с релизом Kotlin 1.6 был представлен новый Gradle-плагин Kover, измеряющий тестовое покрытие Kotlin кода. Он все еще экспериментальный, но в целом его спокойно можно использовать в своих проектах. Держите статью с хорошим обзором его интеграции с проектом и GitHub Actions.
https://lengrand.fr/kover-code-coverage-plugin-for-kotlin/
А раз уж мы заговорили про GitHub Actions, то вот вам еще один классный инструмент, который позволяет настраивать воркфлоу с помощью Kotlin DSL вместо YAML.
https://github.com/krzema12/github-actions-kotlin-dsl
Представьте, что вы разрабатываете библиотеку, которая под капотом работает с одним или несколькими сторонними сервисами. Например, GitHub или AirTable. Вы хотите спрятать от пользователя сложность взаимодействия с их API и дать ему простой интерфейс, но абстракция протекает из-за ошибок и исключений, которые могут генерироваться этими интеграциями. Держите статью про основанный на монадах подход, который позволяет аккуратно процессить эти исключения на уровне библиотеки.
https://www.cortex.io/post/how-we-expect-the-unexpected-in-kotlin
В начале прошлой недели я шарил гайд по работе с Baseline Profiles. А тут и кейс-стади от Google Maps опубликовали, которые, благодаря этой фиче, ускорили время старта приложения на 30%. Кайф!
https://android-developers.googleblog.com/2022/01/improving-app-performance-with-baseline.html
Спасибо всем, кто поучаствовал в недавнем опросе подписчиков! Как и обещал, среди участников провел розыгрыш билетов на Android Crew (их получают @mikhailzisman и @Froyder) и книги "Код: Тайный язык информатики" (она улетает @dosssik). И несколько интересных фактов из опроса:
👀 31% подписчиков – сеньоры, а 56% работают в IT больше четырех лет.
📖 Три самых запрашиваемых темы – Kotlin, архитектура и Tips&Tricks по разработке.
😞 Наименее интересная тема – кроссплатформа.

Всем победителям скоро напишу в личку, а всем остальным – много любви и благодарностей!
Отличный материал про использование профилировщика Perfetto для анализа того, что происходит и сколько времени занимает при выполнении каких-то действий с приложением. Помимо общей инструкции по использованию, разбирается как сделать отчет более читаемым с помощью логов.
https://py.hashnode.dev/tracing-main-thread-messages
Задумались о переходе на Jetpack Compose? Тогда вам обязательно нужно попасть на новый сезон Podlodka Android Crew, который начинается 14 февраля! Всего за 5 дней вместе мы составим подробный пошаговый план перехода на Compose.

Вы узнаете как перевести UI приложения с XML и AppCompat на Compose, посмотрите на практические кейсы и набитые шишки экспертов, разберетесь с навигацией, анимацией, узнаете, как правильно сохранять состояние в приложении и всем, что необходимо для комфортного перехода. И все это в формате воркшопов с множеством кейсов-примеров, которые вы сразу сможете применять.

Всего на Podlodka Android Crew выступит больше 10 спикеров, среди которых Павел Стрельченко из HeadHunter Group, Антон Шилов из Badoo, Андрей Шиков из Facebook, Алексей Гладков из Леруа Мерлен, Миша Левченко из Auto.ru.
Чтобы купить билет, заходите на наш сайт! Успейте купить пока действует специальное предложение для early-bird — только до 2 февраля! Ждем вас на борту!
С февраля вам обязательно нужно заполнять «Google Data Safety Section» при обновлении приложения, и указывать, как вы работаете с пользовательскими данными. И если про свое приложение все относительно понятно, то со сторонними SDK могут возникнуть проблемы, особенно если в их документации пока нет ни слова про персональные данные. Держите поддерживаемый сообществом реестр информации про популярные библиотеки.
https://github.com/Privado-Inc/SDK-Privacy-Report
Основной сценарий использования Kotlin Multiplatform – это выделение какого-то компонента бизнес-логики в общий модуль, который затем шарится между платформами. С таким подходом хорошее тестовое покрытие становится важным вдвойне. Держите очень подробный гайд по тому, как подойти к тестированию мультиплатформенного модуля – разбираются и юнит-тесты, и контракты.
https://akjaw.com/testing-on-kotlin-multiplatform-and-strategy-to-speed-up-development/
Если вам когда-нибудь нужно будет реализовывать полнотекстовый поиск – посмотрите на новую библиотеку lucilla.
https://github.com/haroldadmin/lucilla
Чистый код – это очень расплывчатое понятие (как и архитектура, кек). В каком бы контексте оно не использовалось, полезно пытаться выделить конкретные качества кода, о которых идет речь: читаемость, переиспользуемость, консистентность, тестируемость. Посмотрите на неплохую статью с критикой термина и пополните свой словарик для комментариев на code review.
https://www.steveonstuff.com/2022/01/27/no-such-thing-as-clean-code
➡️ Делаем оффер iOS- и Android-разработчикам за один день. Приглашаем в команды Мобильного банка, Тинькофф Инвестиций, Тинькофф Бизнеса и еще трех проектов.

Вы — в течение одного дня общаетесь с нашей командой. Мы — делаем оффер, если работа подойдет вам по условиям, а задачи — по скиллам.

🖇 Все будет онлайн, 19 февраля. Заявки принимаем до 15 февраля включительно. Подробности и регистрация по ссылке: https://l.tinkoff.ru/offer-mobile
Есть бесконечность подходов к тому, как организовать навигацию в Compose проекте. В статье рассматривается большая часть из них, в заодно и систематизируется в виде списка критериев выбора подходящего решения.
https://commonsware.com/blog/2022/01/22/navigating-compose-criteria.html
В следующий четверг, 10 февраля, ребята из VK проводят Android митап с темами про работу с GraphQL, реверс-инжиниринг мобильных приложений с помощью Frida и интеграцией общего SDK сразу во много приложений.

Регистрация с доступом к чату и викторине – здесь, а трансляции можно дожидаться вот тут.
В последних версиях Android довольно сильно изменилось поведение диплинков. По ссылке – обзор этих измений и план по тому, как адаптировать к ним ваш проект.
https://doordash.engineering/2022/01/25/your-deep-links-might-be-broken-web-intents-and-android-12/
Пошаговый гайд по реализации автоматического импакт-анализа для тестов. Это техника, которая позволяет запускать только те тесты, которые тестируют затронутый изменением код. Авторы говорят, что в их случае экономится около 30% времени прогона.
https://habr.com/ru/company/citymobil/blog/647519/