TGViewer
Channel Public Channel
Android Good Reads

Android Good Reads

@droidgr

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

Размещение рекламы: @tanyasanovna
Subscribers
4.02K
Photos
416
Videos
17
Links
2.2K

Showing posts older than #1369 · Back to latest

Older Posts 20 shown
Post #1368 2.77K
На прошлой неделе я выкладывал подборку полезных плагинов для Android Studio и судя по реакциям, вам было полезно. Держите еще одну подборку. А в комментариях расскажите про самые полезные плагины, которые вы сами используете!
Medium Useful Android Studio plugins Android Studio is a fully-featured IDE built by JetBrains and Google that has all that you need for writing an application. But you always…
Post #1367 2.6K
Post #1366 2.29K
Вдогонку еще одно обсуждение в Твиттере про Gradle – есть ли смысл мигрировать с buildSrc на Gralde Version Catalogs. Если кратко, то стоит, и вот почему:
- Использование buildSrc увеличивает время компиляции
- При любом изменении buildSrc инвалидируется весь билд кэш
- В будущем даст дополнительные плюшки при более тесной интеграции Gradle с GitHub

Из минусов – в Android Studio пока не работает автокомплишн, но вот тут есть воркэраунд.
Twitter Sam Edwards What is the benefit of moving from buildSrc -> Gradle Version Catalogs? docs.gradle.org/current/usergu… Standardization? Performance? etc? 🤷‍♂️ I feel like I should use it, so that I'm using a standard, but am looking for performance numbers or something…
  • 👍 4
Post #1365 2.04K
Post #1364 2.17K
Spotify выпустили Ruler – Gradle плагин для измерения и анализа размера APK. Из основных фичей:
- Анализирует APK, собранные под разные профили девайсов
- Замеряет Download Size и Install Size
- Строит дерево зависимостей от конкретных файлов до модулей, в которых они содержатся
- Дает оценку по влиянию на размер каждого класса
- Умеет маппить все классы на владельцев кода

В блоге ребята говорят, что благодаря инструменту уменьшили свое приложение уже на 9%.
GitHub GitHub - spotify/ruler: Gradle plugin which helps you analyze the size of your Android apps. Gradle plugin which helps you analyze the size of your Android apps. - spotify/ruler
  • 🔥 12
Post #1363 2.6K
Post #1362 1.93K
Интересное эссе про то, что использование IDE при разработке не даст вам стать действительно крутым специалистом. Проблема, по мнению автора, в том, что когда вы слишком привыкаете к автоматическим саджестам от IDE, вы не пытаетесь придумать способы сделать свой код лучше. А новые инструменты вроде Copilot делают проблему еще более острой.
briandfoy.github.io What do you really get from IDE-driven development? I’ve been playing with GitHub Copilot, an IDE extensions that uses GitHub’s vast knowledge of how people code to suggest what you probably meant to type next. I’m running it through Visual Studio Code, but it also runs in JetBrains and Neovim.
  • 👎 33
  • 🤔 4
  • 👍 1
Post #1361 2.02K
Post #1360 2.31K
Начался еще один цикл статей про structured concurrency. У этого, правда, довольно многообещающее начало – хорошо разбираются исходные проблемы, а базовые концепции объясняются на понятных схемах.
Thedevtavern Structured concurrency explained - Part 1: Introduction This post explains structured concurrency in an intuitive way and shows how it simplifies concurrent programs in practice!
  • 👍 7
  • 👎 2
  • ❤ 1
Post #1359 1.97K
Всем привет.

Война – это ужасно, и того, что происходит, не должно происходить. Я считаю недопустимой войну, развязанную Россией, и безумными действия российского правительства.

Бояться в этой ситуации – абсолютно нормально, потому что никто не может представить, как дальше будут развиваться события. Но постарайтесь не давать страху перерастать в панику. Это – плохое состояние, в котором любые принятые решения будут, скорее всего, неверными.

Чтобы у вас была возможность отвлечься от новостных лент, я продолжу выкладывать в свои каналы технический контент. Кроме этого, я обязательно буду делиться ссылками, актуальными сейчас – новостями про работу важных для нас сервисов, советами по релокации. Если вы не захотите его читать – можете замьютить канал или отписаться от него.

Ребята из 🇺🇦, держитесь ❤️
  • ❤ 142
  • 💩 16
  • 👍 7
  • 👎 7
  • 🤮 3
Post #1357 2.68K
Branch by Abstraction – это техника разработки, позволяющая защититься от болезненного мерджа долгоживущих веток. Вместо того, чтобы вести рефакторинг в отдельной ветке в VCS, изменяемый кусок системы выделяется в закрытую интерфейсом абстракцию. Вы рефакторите его копию, и сохраняете оригинал до тех пор, пока работа не будет закончена.

Больше деталей и примеров – в статье.
Хабр Как применять Branch by Abstraction в проекте на примере Android-разработки Представим простую историю. Вы заканчиваете делать рефакторинг, которым занимались последние 2 недели. Вы хорошо над ним поработали, сделали несколько ключевых изменений в проекте. Делаете...
  • 👍 9
  • 👎 2
Post #1356 2.28K
В kotlinx-coroutines недавно завезли новые возможности, которые упрощают тестирование кода с корутинами. В блогпосте разбираются два кейса:
- Написание теста для кода, который вызывает suspend функции
- Написание теста для кода, который запускает внутри себя новую корутину
craigrussell Testing Android Coroutines using runTest The latest tooling to help test Android Coroutines, provided as part of the kotlinx.coroutines test libraries, which aim to “provide utilities for efficiently testing coroutines”.
  • 👍 6
Post #1355 2.05K
Быстрая проверка на то, не включаете ли вы в релизные сборки какие-нибудь тестовые зависимости:
./gradlew :app:dependencies --configuration releaseRuntimeClasspath | grep -e test -e junit
Twitter Alex Vanyo Random sanity check for your Android projects: ./gradlew :app:dependencies --configuration releaseRuntimeClasspath | grep -e test -e junit If that outputs some test dependency, then that dependency is being included in your release build. You probably don't…
Post #1354 2.06K
Post #1353 1.82K
Стоило только вспомнить на прошлой неделе про синтетики, как пришла новость от Google – они будут удалены из Kotlin этой осенью, вместе с выходом версии 1.8. Parcelize при этом остается жить, но как отдельный плагин.

Если вы все еще не перешли на View Binding, то вот гайд по миграции.
Android Developers Blog Discontinuing Kotlin synthetics for views Posted by Márton Braun, Developer Relations Engineer
  • 👍 6
Post #1352 1.77K
Отличный пример использования появившихся в 1.6.20-М1 контекстных ресиверов для того, чтобы сделать DSL более чистыми.

А если вы хотите разобраться с контекстными ресиверами подробнее, почитайте текст соответствующего пропозала.
timothyearley.github.io DSL with new context receivers
  • 👍 2
Post #1351 1.79K
Окей, сделаем это воскресенье мультиплатформенным! Интервью с разработчиками Compose Multiplatform – Колей Иготти и Игорем Деминым.
🔄 Архитектурные решения, использованные при мультиплатформизации фреймворка
🤔 Текущие решаемые задачи и ограничения
📆 Планы развития на будущее

Видео на YouTube
YouTube Интервью: Все что хотели знать, но боялись спросить про Compose Multiplatform / И. Демин, Н. Иготти Jetpack Compose стремительно набирает популярность по всему миру среди Android разработчиков. Однако Compose - это не только Android библиотека, это фундаментально новый подход к организации и написанию UI для настольных приложений (Windows, Mac, Linux),…
  • 👍 4
Post #1350 1.76K
Команда Kotlin запустила новое ежемесячное шоу про мультиплатформу – АТОМ. В первом выпуске обсуждается:
🎨Compose Multiplatform
🃏Изменения в мультиплатформенной экосистеме в последний год
💻Кишочки новой модели памяти и других фичей
📆Планы по выходу КММ в бету
https://youtube.com/watch?v=5eVBstHUCyE
YouTube Brand New Kotlin Multiplatform Podcast: ATOM Hello Kotlin Multiplatform community and welcome to A Touch of Multiplatform (ATOM)!!! This is the brand new monthly podcast dedicated to Kotlin Multiplatform technology in production and produced for you by JetBrains and Touchlab. In this first episode…
  • 🔥 8
Post #1349 1.92K
📆В месяц в нашем канале появляется около 60 различных материалов. Читать их все сразу, думаю, мало у кого получается. Чтобы помочь вам нагнать пропущенное, раз в месяц я буду публиковать дайджесты самых интересных и заплюсованных материалов из канала. Ловите первый выпуск!

🏝Kotlin: язык, стандартная библиотека, мультиплатформа
Огромный материал про перфоманс и влияние на него языковых фичей Kotlin
Как писать скрипты на Kotlin со своими типами
Разбор Duration API
Пишем мультиплатформенные тесты
Веб-визард для создания мультиплатформенных проектов

💻Архитектура и код
Обзор сильных и слабых сторон новых архитектурных рекомендаций Google
Нет такого понятия как чистый код
Критика книги "Чистый код”
Подборка статей про организацию архитектурного интервью
Обзор решений для навигации в Compose

🛠Инструменты и библиотеки
Kotlin-first библиотека для работы с контактами
Роадмап разработки Jetpack Compose
Автоматический импакт-анализ для тестов
Любимые плагины для IDEA
Пишем GitHub Actions с Kotlin DSL

🤔Кстати, у меня есть еще один канал, на который стоит подписаться тем, кто хочет расти в управление командой – TechLead Good Reads. Держите несколько интересных материалов оттуда на закуску!
Доклад про то, что оценка сроков и дедлайны не нужны
Гайд по организации планирования
Decision log для решений в команде

Если дайджест вам понравился – ставьте ❤️, 👍 и 🔥. Благодаря этому я пойму, что собирал его не зря! А если у вас будут конкретные предложения по его улучшению – смело пишите в комментарии!

#digest
Medium High performance with idiomatic Kotlin Nothing is more likely to drive users away than a poorly performing app. So this is why we, as developers, should focus on performance.
  • 👍 26
  • 🔥 7
  • ❤ 3
  • 👏 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →