#compose
From View to Composable: A Quick jump to Jetpack Compose from an Android View mindset (5 мин)
Миграция с View на Compose - довольная актуальная задача для многих приложений, ну либо в обозримом будущем придется столкнуться с этой задачей. Моя первая рекомендация — первым делом изучите принципы написания UI на Compose и не тяните туда привычки из View.
Автор статьи попытался показать как переходить с View на Compose, основные отличия и даже сделал cheat sheet с основными соответствиями API View в Compose.
From View to Composable: A Quick jump to Jetpack Compose from an Android View mindset (5 мин)
Миграция с View на Compose - довольная актуальная задача для многих приложений, ну либо в обозримом будущем придется столкнуться с этой задачей. Моя первая рекомендация — первым делом изучите принципы написания UI на Compose и не тяните туда привычки из View.
Автор статьи попытался показать как переходить с View на Compose, основные отличия и даже сделал cheat sheet с основными соответствиями API View в Compose.
👍69💩29👎1🔥1
#android12L
Activity Embedding in Android (8 мин)
Для того чтобы проще адаптировать UI для планшетов в Android 12L решили добавить возможность встраивания Activity в UI (Fragment видно не у всех) в Jetpack WindowManager. В статье найдете как это применить и для каких сценариев
Activity Embedding in Android (8 мин)
Для того чтобы проще адаптировать UI для планшетов в Android 12L решили добавить возможность встраивания Activity в UI (Fragment видно не у всех) в Jetpack WindowManager. В статье найдете как это применить и для каких сценариев
💩22🤯15👍7
#курс #бесплатно
Запустился бесплатный курс «Подготовка к алгоритмическому собеседованию» от Яндекс Практикума
Всем кто хочет освоиться в алгоритмах и структурах данных, а еще и бесплатно — Яндекс сделали бесплатный курс «Подготовка к алгоритмическому собеседованию»
Содержание курса:
1️⃣ Краткое введение в курс
2️⃣ Как проходят алгоритмические собеседования
3️⃣ Какие алгоритмы нужно знать
4️⃣ Какие структуры данных нужно знать
5️⃣ Подготовка и практика
Это не реклама!
Запустился бесплатный курс «Подготовка к алгоритмическому собеседованию» от Яндекс Практикума
Всем кто хочет освоиться в алгоритмах и структурах данных, а еще и бесплатно — Яндекс сделали бесплатный курс «Подготовка к алгоритмическому собеседованию»
Содержание курса:
1️⃣ Краткое введение в курс
2️⃣ Как проходят алгоритмические собеседования
3️⃣ Какие алгоритмы нужно знать
4️⃣ Какие структуры данных нужно знать
5️⃣ Подготовка и практика
Это не реклама!
🔥76💩50👍11❤4👎1
#ПодборкаВидео
📺 Android App Excellence Summit (8 видео, ~3 часа)
📺 How to Use String Resources In a ViewModel (12 мин)
📺 Российские процессоры: МОГУТ ИЛИ НЕТ? (1 час)
📺 Context Receivers Are Coming to Kotlin! (0.5 часа)
📺 Now in Android #59 (6 мин)
📺 Callback Hell в корутинах, как избавиться от него? (1 час)
📺 Сортировка расческой. От пузырька до расчески (9 мин)
📺 Как работает Retrofit. Java Dynamic Proxy. Архитектура библиотек (0.5 часа)
📺 Android App Excellence Summit (8 видео, ~3 часа)
📺 How to Use String Resources In a ViewModel (12 мин)
📺 Российские процессоры: МОГУТ ИЛИ НЕТ? (1 час)
📺 Context Receivers Are Coming to Kotlin! (0.5 часа)
📺 Now in Android #59 (6 мин)
📺 Callback Hell в корутинах, как избавиться от него? (1 час)
📺 Сортировка расческой. От пузырька до расчески (9 мин)
📺 Как работает Retrofit. Java Dynamic Proxy. Архитектура библиотек (0.5 часа)
👍37💩21👎1
Используете AI для написания кода?
Anonymous Poll
3%
Да, регулярно
4%
Пробовал(а)
23%
А так можно?
18%
Что это?
45%
Нет
7%
Не участвую в опросе
💩38🔥8👍2👎1
#coroutines
Как изучить Kotlin Coroutines
Привет! Все ждут моего курс по Kotlin Coroutines, я тоже жду когда смогу его закончить. Решил пока собраться материалы, которые помогают мне в подготовке курса
Как изучить Kotlin Coroutines
Привет! Все ждут моего курс по Kotlin Coroutines, я тоже жду когда смогу его закончить. Решил пока собраться материалы, которые помогают мне в подготовке курса
Telegraph
Как изучить Kotlin Coroutines
Привет! Все ждут моего курс по Kotlin Coroutines, а тоже жду когда смогу его закончить. Решил пока собраться материалы, которые помогают мне в подготовке курса. Официальная документация (сюда) Конечно же отправная точка для изучения Coroutine - это официальная…
👍127💩23🔥10❤7👎1👏1😁1
#architecture
Сравниваем готовые решения для реализации MVI-архитектуры на Android
Если с MVVM в Android вы, скорее всего, знакомы с подходом от Jetpack, но вот с MVI их много и непонятно что лучше. Автор статьи рассматривает самые популярные реализации, причем даже на чистом Kotlin с поддержкой Multipaltform
Сравниваем готовые решения для реализации MVI-архитектуры на Android
Если с MVVM в Android вы, скорее всего, знакомы с подходом от Jetpack, но вот с MVI их много и непонятно что лучше. Автор статьи рассматривает самые популярные реализации, причем даже на чистом Kotlin с поддержкой Multipaltform
👍52💩30🔥3👎1
Forwarded from Kotlin Multiplatform Broadcast
#tooling
Вышел detekt 1.20.0
👉 Новые правила (целых 16 штук)
👉 Возможность описывать стандартную конфигурацию для правил поверх которой можно делать независимые настройки у каждого пользователя
👉 Улучшение отчетов
👉 Исправление багов
👉 Поддержка Kotlin 1.6.20 и Gradle 7.4.2
👉 Обновление до KtLint 0.45.2
Вышел detekt 1.20.0
👉 Новые правила (целых 16 штук)
👉 Возможность описывать стандартную конфигурацию для правил поверх которой можно делать независимые настройки у каждого пользователя
👉 Улучшение отчетов
👉 Исправление багов
👉 Поддержка Kotlin 1.6.20 и Gradle 7.4.2
👉 Обновление до KtLint 0.45.2
👍35💩25🔥5👎1
#compose
Jetpack Compose: Testing animations
В отличие от Espresso, который отключает анимации для выполнения тестов, Compose позволяет тестировать свои анимации, благодаря тому что этот фреймворк использует собственные виртуальные часы для работы с анимацией. Автор статьи рассказывает про этот механизм
Jetpack Compose: Testing animations
В отличие от Espresso, который отключает анимации для выполнения тестов, Compose позволяет тестировать свои анимации, благодаря тому что этот фреймворк использует собственные виртуальные часы для работы с анимацией. Автор статьи рассказывает про этот механизм
💩28👍27🔥2👎1
#compose
Jetpack Compose with Lifecycle-Aware Composables (4 мин)
Рецепт как получить события Android ЖЦ внутри Composable функции, правда затем ViewModel реализую как LifecycleObserver и назначают слушателем у ЖЦ, что как по мне странно.
Пишите в комментариях, что думаете вы о добавление возможности ViewModel следить за состоянием ЖЦ связанного с ней экрана
Jetpack Compose with Lifecycle-Aware Composables (4 мин)
Рецепт как получить события Android ЖЦ внутри Composable функции, правда затем ViewModel реализую как LifecycleObserver и назначают слушателем у ЖЦ, что как по мне странно.
Пишите в комментариях, что думаете вы о добавление возможности ViewModel следить за состоянием ЖЦ связанного с ней экрана
💩41👍12❤3👎1🔥1
A couple of interesting things from Telegram Android app source code (3 мин)
Автор статьи покопался в исходниках Telegram и делится тем как в приложении организованно разделение устройств в зависимости от их уровня производительности, а также как через Custom View делают анимацию
Автор статьи покопался в исходниках Telegram и делится тем как в приложении организованно разделение устройств в зависимости от их уровня производительности, а также как через Custom View делают анимацию
👍43💩22❤5🔥3👏2👎1
Нужен ли контент для начинающих (в ущерб текущему контенту) в видео формате?
Пишите в комментах что именно хотите
Пишите в комментах что именно хотите
Anonymous Poll
34%
Да
47%
Оставь как есть
9%
Не смотрю
9%
Не участвую в опросе
👍43💩41🔥4👎1
#performance
Monitoring CPU performance of Lyft’s Android applications (9 мин)
В статье разбирается как оценить нагрузку приложения на CPU в вашем устройстве, какие API для этого можно использовать, какие метрики можно получить и как они позволят понять насколько сильно вы нагружаете устройство
Monitoring CPU performance of Lyft’s Android applications (9 мин)
В статье разбирается как оценить нагрузку приложения на CPU в вашем устройстве, какие API для этого можно использовать, какие метрики можно получить и как они позволят понять насколько сильно вы нагружаете устройство
💩31👍20❤2👎1
#AndroidBroadcast #benchmark
Сравнил производительность сборки Android проектов на двух одинаковых MacBook Pro, отличалось только количество оперативной памяти 16 и 32 ГБ. Итог — версия с большим количеством RAM собрала проекты немного хуже 😧. Кто может объяснить почему так, рад почитать в комментариях
Важным преимуществом большой версии оперативной памяти будет случай когда у вас огромный проект с сотнями тысяч строк и модулей, исчисляющихся сотнями. В других случаях для разработки Android проектов 32 Гб будет лишним, если только про запас
P.S. Результаты тестов в архиве
Сравнил производительность сборки Android проектов на двух одинаковых MacBook Pro, отличалось только количество оперативной памяти 16 и 32 ГБ. Итог — версия с большим количеством RAM собрала проекты немного хуже 😧. Кто может объяснить почему так, рад почитать в комментариях
Важным преимуществом большой версии оперативной памяти будет случай когда у вас огромный проект с сотнями тысяч строк и модулей, исчисляющихся сотнями. В других случаях для разработки Android проектов 32 Гб будет лишним, если только про запас
P.S. Результаты тестов в архиве
💩45👍24🤔9🔥7🤯3👎1
#compose
How can I debug recompositions in Jetpack Compose?
Различные подходы для понимания как часто происходит рекомпозция в ваших Composable функциях. Пока выглядит все как костыли. Ждем хорошо тулинга в IDE
How can I debug recompositions in Jetpack Compose?
Различные подходы для понимания как часто происходит рекомпозция в ваших Composable функциях. Пока выглядит все как костыли. Ждем хорошо тулинга в IDE
💩39👍18👎2😢1
#AndroidBroadcast
Android Broadcast Q&A с Кириллом Розовым
Когда: четверг, 21 апреля, 18:30 (GMT+3)
Регулярный стрим с ответами на ваши вопросы по Android, it и другие. Не забывайте поставить напоминание!
Android Broadcast Q&A с Кириллом Розовым
Когда: четверг, 21 апреля, 18:30 (GMT+3)
Регулярный стрим с ответами на ваши вопросы по Android, it и другие. Не забывайте поставить напоминание!
👍75💩33❤1👎1
Как разработчику перестать быть потребителем технологий
Как давно вы использовали не какую-то библиотеку или фреймворк, а создали что-то свое? Автор статьи поднимает интересную тему как перестать быть потребителем технологий и почему
Как давно вы использовали не какую-то библиотеку или фреймворк, а создали что-то свое? Автор статьи поднимает интересную тему как перестать быть потребителем технологий и почему
💩68👍43🤔9👎1
#jetpack
Implementing Periodic Notifications with WorkManager
Простое руководство как с помощью Jetpack Workmanager реализовать периодический показ уведомлений
Implementing Periodic Notifications with WorkManager
Простое руководство как с помощью Jetpack Workmanager реализовать периодический показ уведомлений
👍49💩27👎1
#tooling
Вышел LeakCanary 2.9.1
👉 Дополнительные метрики в дампы
👉 Ускорение сбора дампа
👉 Удалил FailTestOnLeakRunListener (breaking change)
👉 Исправление багов
Если хотите что-то предложить для LeakCanary 3.0, можете написать об этом в Twitter здесь. Что известно уже:
👉 Отдельное приложение для визуализации утечек
👉 Okio 3.0
👉 Поддержка мультиплатформы (возможно)
👉 Визуализация heap в виде дерева
Вышел LeakCanary 2.9.1
👉 Дополнительные метрики в дампы
👉 Ускорение сбора дампа
👉 Удалил FailTestOnLeakRunListener (breaking change)
👉 Исправление багов
Если хотите что-то предложить для LeakCanary 3.0, можете написать об этом в Twitter здесь. Что известно уже:
👉 Отдельное приложение для визуализации утечек
👉 Okio 3.0
👉 Поддержка мультиплатформы (возможно)
👉 Визуализация heap в виде дерева
👍36💩24🔥2👎1
#perfrormance #jetpack
Measure and improve performance with Macrobenchmark (9 мин)
Обзор библиотеки Jetpack Macrobenchmark, которая помогает вам анализировать производительность вашего приложения и как можно улучшить производительность вашего приложения на 30% с помощью Baseline Profiles. Все показывается на примере реального приложения
Jetpack Macrobenchmark поможет вам проверить скорость запуска приложения, навигацию между Activity, скроллинг и другие манипуляции с UI.
Measure and improve performance with Macrobenchmark (9 мин)
Обзор библиотеки Jetpack Macrobenchmark, которая помогает вам анализировать производительность вашего приложения и как можно улучшить производительность вашего приложения на 30% с помощью Baseline Profiles. Все показывается на примере реального приложения
Jetpack Macrobenchmark поможет вам проверить скорость запуска приложения, навигацию между Activity, скроллинг и другие манипуляции с UI.
🔥28💩26👍2👎1