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

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

Размещение рекламы: @tanyasanovna
Download Telegram
Твиттер-тред про то, как к Gradle плагину можно подключить библиотеку, написанную на Swift и работающую с Foundation. Из интересного – работа с библиотекой ведется через JNA, более простую альтернативу JNI.
Qiwi рассказывают про свой опыт работы с KMM, на котором они реализовали сетевой слой и view models. Если вы еще только присматриваетесь к КММ, то кейс ребят может вас вдохновить.
Представьте себе прямую, описываемую функцией y=mx+b. Параметр b показывает, насколько далеко от 0 находится место пересечения оси Y, а m – угол наклона. Это – удобная ментальная модель, чтобы оценивать сложность использования различных библиотек, где b – сложность первого старта, m – сложность, возникающая при усложнении кейсов использования.

Джейк Уортон написал статью, в которой прикладывает эту модель к библиотекам Picasso, Retrofit и Dagger, и рассуждает, как ее использовать при создании новой библиотеки.
Системная статья про то, как в Compose работают сайд эффекты, каких антипаттернов стоит остерегаться, и как в них работать со сторонними зависимостями.
Недавно команда Square увидела, что на эмуляторах с API 23 резко вырос объем памяти, потребляемой на CI библиотекой LeakCanary. Прочитайте статью с расследованием причин проблемы и разбором нюансов работы сборщика мусора.
Kotlin Multiplatform отлично подходит для разработки DSL. Держите пример того, как с его помощью решили задачу генерации SVG на бэкенде и фронтенде.
Продолжение цикла статей про structured concurrency. В этой части разбирается обработка ошибок:
📌Обработка исключений внутри coroutine scope
📌Обработка не фатальных ошибок с помощью supervisorScope
📌
Отмена корутин
Туториал по созданию переиспользуемого Compose компонента с анимацией на канвасе.
Теория разбитых окон гласит – чем больше мелких правонарушений происходит, тем больше вероятность того, что начнут происходить и крупные. Держите небольшое эссе, в котором разбирается, как эта теория может быть применена к разработке софта.
Если вам нужно подключить к проекту сразу несколько модулей одной библиотеки, попробуйте использовать BOM файлы – источники правды о том, какие конкретно версии модулей должны использоваться в проекте, с учетом транзитивных зависимостей.
Успейте подать заявку на Weekend Offer в мессенджер VK Teams для мобильных разработчиков и получите оффер всего за два дня, а бонусом доп. зарплату на старте.

Зарегистрироваться

📌Первая встреча состоится до 22 апреля: с вами свяжутся после получения заявки.
📌23 апреля вас ждет знакомство с командой и технические собеседования.
📌Финальные собеседования проведут 24 апреля и вечером отправят лучшим кандидатам офферы.

Узнайте подробнее в видеоприглашении о продукте и задачах, которые вас ждут, и не упускайте свой шанс!
Статья про то, как тестировать анимации в Compose с помощью фреймворка «Compose UI Test», на выходе которых вы получаете скриншоты результата.
В Jetpack Compose 1.2.0 добавили возможность репортить различные перфоманс метрики во время сборки. Держите лучший пост прошлой недели про то, как Compose работает под капотом и какие решения могут ухудшить или улучшить эти метрики.
Keep rules – это фича ProGuard, которая позволяет сохранять оригинальные имена классов или функций после оптимизации кода. Это нужно, например, для того, чтобы не ломалась логика, основанная на рефлексии. С Java все работает просто, а вот использование keep rules с Kotlin не так очевидно.
Текст про историю создания и развития протокола JSON. Пара фактов для затравочки:
📌Ключи в JSON помещаются в кавычки по историческим причинам – чтобы при скармливании его интерпретатору JavaScript не возникало коллизий по зарезервированным словам.
📌Великолепная цитата автора JSON в ответ на набросы про то, что он переизобрел XML: «The good thing about reinventing the wheel is that you can get a round one».
Команда Slack выложила в открытый доступ свой внутренний Gradle плагин. Посмотрите, чтобы вдохновиться:
📌Базовая конфигурация для Kotlin и Android
📌Специальный DSL для включения и выключения частых зависимостей
📌Метрики модульности
📌И много разных тасок, которые вы сможете попробовать забрать и в свой проект