Обложка канала

Android Good Reads. Страница 6

2600 @droidgr

Самые интересные статьи, видео и новости, связанные с Android разработкой. Не больше трёх материалов в день.

  • Android Good Reads

    Опыт использования Compose Desktop в продакшне - Фреймворк лучше всего подходит для написания приложений, которым не требуется тесная интеграция с системой. - Например, компонент для реализации меню в Tray выглядит и работает нормально в macOS, но на Windows он устаревший. А поддержки действий с уведомлениями вообще нет. - Вызывать нативные API платформы тоже довольно больно, хотя и теоретически возможно. Документация и примеры
  • Android Good Reads

    Android приложение, написанное ChatGPT За 78 вопросов и ответов к ChatGPT автор получил приложение, которое выводит 50 популярных бумаг с их ценами. Весь проект настроен и код сгенерирован нейронкой, а баги, если появлялись, исправлялись тоже с помощью чат-бота. Код на GitHub
  • Android Good Reads

    Gradle 8.0-RC Вышла предрелизная версия Gradle. Большая часть касается улучшений поддержки KTS в Gradle: - Появилась поддержка всех языковых и stdlib фичей Kotlin выше версии 1.4.0. - Убрали лок на Java 8 для компиляции скриптов. - Компиляция скриптов ускорена на 20% за счет кастомного интерпретатора для блока plugins {}. Учитывая, что вместе с этим в Android Studio Canary в несколько раз улучшили перфоманс IDE, все движется к тому, что скоро .gradle.kts станет дефолтной опцией для написания билдскриптов. Кроме этого, в Gradle 8.0 много улучшений для configuration cache и buildSrc билдов.
  • Реклама

  • Android Good Reads

    Подкаст про MockK MockK – одна из популярных библиотек для создания моков в Kotlin. С ее автором записали эпизод подкаста The Developers’ Bakery, в котором разобрали нюансы работы с моками в JVM, отличия MockK от других библиотек, детали его реализации и оптимизации перфоманса.
  • Android Good Reads

    Гайд по прохождению System design интервью Подробный алгоритм прохождения архитектурной секции интервью с учетом мобильной специфики на примере ленты Твиттера: - Как правильно собирать требования и какие уточняющие вопросы задавать - Как отрисовать общую архитектурную схему и какие компоненты показать - Как подойти к дизайну взаимодействия с бэкендом - Как обсуждать организацию хранения данных - Какие дополнительные темы могут всплывать
  • Android Good Reads

    Вышел Kotlin 1.8.0 - Значительна улучшена производительность kotlin-reflect - Новый флаг -Xdebug, который отключает все оптимизации во время дебага - Удален старый Kotlin/JVM бэкенд - Новые аннотации в Kotlin/Native для улучшения интеропа с Objective-C/Swift - Стабилизирован новый Kotlin/JS бэкенд - Совместимость с Gradle 7.3 - Компиляторные флаги теперь можно задавать с помощью удобного Gradle DSL
  • Android Good Reads

    Обзор редко используемых фичей Kotlin В статье разбирается несколько полезных, но сравнительно редко используемых фичей Kotlin: 👉fun interface / function types 👉type alias 👉import alias 👉value class 👉data object
    A few Kotlin constructs · Kaushik Gopal's Site

    A few Kotlin constructs have been introduced into the language over time. I wrote this post as a personal/public service advisory to remind us of their significance. Would love to credit img owner 1. fun interface (SAM) 1.1. (vs) function types 2. type alias 3. import alias 4. value class 5. data object Revisions 1. fun interface (SAM) Many languages (like Java) did not initially treat functions as first-class citizens.

    kau.sh
  • Android Good Reads

  • Android Good Reads

    AdbOrc – простой шаринг Android девайсов в команде AdbOrc создает распределенную виртуальную ферму девайсов. Им не нужно физически находиться в одном месте, достаточно просто подключить их к компьютеру и расшарить для подключения через консольную тулу. Сеть состоит из трех ролей: 📲Supplier – тот, кто предоставляет свой девайс для использования. 💻Consumer – тот, кто подключается к чужому девайсу. 🔄MarketMaker – хаб, который регистрирует девайсы и менеджерит доступ к ним. На каждый расшаренный девайс стартует ADB сервер, информация о котором расшаривается через MarketMaker. Для доступа к экрану девайса используется scrcpy. Все соединения шифруются. AdbOrc на GitHub
  • Android Good Reads

    Мини-курс по Rust от команды Android Сравнительно недавно в AOSP занесли Rust для разработки части компонентов операционной системы. Чтобы разработчикам было проще заонбордиться, команда выпустила четырехдневный курс по Rust для новичков. Задачи курса – познакомить с базовым синтаксисом и концепциями языка, а заодно погрузить в Android-related специфику. Если вы еще не придумали, чем заняться на новогодних каникулах, знакомство с Rust может быть отличной идеей!
  • Android Good Reads

    Релиз-трейны в команде Додо Чем больше становится количество команд, разрабатывающих фичи в мобильном приложении, тем сложнее организовывать feature-driven релизы – теряется предсказуемость, повышается сложность тестирования интеграции фичей друг с другом. Стандартное решение проблемы – организация релизного поезда. Все релизы катятся по строгому расписанию, вне зависимости от статуса готовности конкретных фичей. Фича готова – значит, попадет в релиз. Чуть-чуть не успели – поедет в следующий. Команда Додо рассказала, какие проблемы в процессах подтолкнули их к организации релиз-трейнов, как они внедряли новый процесс, и как он повлиял на метрики разработки: lead time и среднее количество дефектов на релиз.
  • Android Good Reads

  • Android Good Reads

  • Android Good Reads

    Как измерить, сколько времени выполняется блок кода Самый простой способ узнать, сколько времени уходит на выполнение какого-то куска кода – обернуть его в экспериментальную функцию стандартной библиотеки measureTime. После выполнения лямбды возвращается объект Duration, содержащий информацию о времени ее исполнения.
  • Android Good Reads

    Yatagan – новый DI фреймворк - Ребята из Яндекс Браузера написали и заопенсорсили новый DI фреймворк, практически полностью совместимый с Dagger по API. Его основной плюс в том, что он ускорил сборку их проекта в два раза. - В статье с большим количеством деталей разбирается история управления зависимостями в их проекте, архитектура и реализация Yatagan.
  • Реклама

  • Android Good Reads

    Самое простое интро в шейдеры Если вы никогда не писали свои шейдеры, и просто киваете с умным видом, когда кто-то начинает говорить про оптимизированный под GPU код, обязательно прочитайте статью. 💻Отличие CPU от GPU в вопросах вычислений 🤔Ограничения в разработке шейдеров 🎨Примеры шейдеров
  • Android Good Reads

    KotlinDL теперь на Android ONNX – это спецификация deep learning моделей, которая поддерживается большинством фреймворков для их обучения, например, TensorFlow. KotlinDL дает возможность запускать такие модели прямо на устройстве с помощью простого API. Вместе с библиотекой идут несколько уже обученных моделей для следующих задач: 👀Определение объектов 🌅Классификация изображений 💃Распознавание поз 😊Распознавание лиц 🫠Выравнивание лиц Что еще есть в библиотеке: - DSL для препроцессинга изображений до передачи их нейронке, с готовыми функциями для кропа, изменения масштаба и поворота. - Поддержка аппаратного ускорения на девайсах со специальным железом. - Поддержка любых кастомных ONNX моделей, которые обучили вы сами. Делитесь фидбэком в комментариях, команде он очень важен!
  • Android Good Reads

    Как устроен и работает Kotlin DSL для описания конфига GitHub Actions Автор проекта github-workflows-kt рассказывает о том, как настрадался с описанием конфигурации CI с помощью YAML и решил переписать все на Kotlin DSL. Самое интересное в статье – то, как автор подошел к вопросам дизайна, выделял основные сущности и исправлял проблемы большого количества дублирующихся сущностей в YAML.