Опыт перехода на MVI
Команда Юлы делится своим опытом перехода на MVI (Model-View-Intent):
👉 зачем свой MVI фреймфорк?
👉 предпосылки миграции
👉 опыт внедрения собственного MVI фреймворка
#architecture
Google Play запускает программу тестовую программу Strike Removal
Новая программа позволит нарушителям правил магазина снять баны, после прохождения специального тренинга и успешной сдачи экзамена по политикам Google Play. Время прохождения курса ограничено, а дата прийдет вам в письме об вашем бане.
Как вам новая инициатива магазина приложения? Упростит борьбу с поддержкой? Делитесь мнением в комментариях
#googleplay
Обновление Android Jetpack от 10 августа 2022
Ничего серьезного в обновлении: что-то поправили там, что оптимизировали там, а вот тут добавили больше логов и улучшили API. Ну и хорошо, лучше стабильность порой чем куча фичей и рефакторинга
UPD: Compose Compiler 1.3.0 Stable с поддержкой Kotlin 1.7.10
#jetpack #jetpackupdate
📺 Много графиков в WebView на Android. TradingView (~1 час)
Взял интервью у Александра Невьянцев, Тим Лид команды TradingView, которая занимается разработкой приложения.
Что обсудили:
👉 Скорость доставки данных и сериализации
👉 Отображение графиков на JS в WebView
👉 Почему не Flutter или KMM?
👉 Эволюция Chrome WebView в Android
👉 Что должно в Android стать лучше
Патроны на Boosty и Patreon и выше смогли посмотреть это интервью раньше на 2 недели. Поддержи Android Broadcast и посмотри новые видео в раннем доступе уже сейчас
#AndroidBroadcast #интервью #tradingview
Build a Real-Time Android WhatsApp Clone With Jetpack Compose (8 мин)
В статье описан процесс разработки клона WhatsApp:
👉 Архитектура
👉 Организация Gradle модулей
👉 Организация темной/светлой темы в Compose
👉 Интеграция Stream Chat SDK
👉 Использование App Startup
👉 Разработка экрана
#compose #architecture
Курс "Алгоритмы и структуры данных" от SkillFactory позволит вам освоиться в этой теме чтобы подготовиться к прохождению интервью в топовые компании России и зарубежья.
Алгоритмы нужны только для интервью? Нет. Вряд ли они пригодятся вам чтобы красить кнопки, но зато вы сможете лучше понять как выстраивать архитектуры, оценивать решения и оптимизировать работу приложений. Такие навыки нужны чтобы двигаться от Middle к Senior/Lead позициям.
Старт ближайшего набора - 30 августа
#реклама
Copy-paste improvements in Android13 (2 мин)
Обзор обновление работы с буфером обмена в Android 13:
👉 Перед копирование информации в буфер надо явно помечать чувствительная ли она или нет
👉 Всплывашка с превью того что скопировали
#android13
🔴 Начинаем экспертное собеседование
Саша Блинов из Head Hunter будет собеседовать Лешу Быкова из Revolut на позицию Team Lead в продуктовую компанию. Проверять будут навыки управления, Soft Skills, а также как он подойдет для продукта
P.S. запись останется на канале после трансляции
За последние 2 года я круто развился в техническом пиаре и уже много раз занимался ведением людей в написании статей и оформлением Open Source проектов.
Если вы хотите написать статью, но никогда это не делали или не знаете как, да и тему не можете выбрать, то во всем этом я могу вам помочь! Теперь для патронов есть возможность подключит меня в качестве ментора для написании статьи! Подписка тут
Gotchas in Jetpack Compose Recomposition
Оптимизация рекомпозиции - залог успеха для быстрой работы Compose. Автор статьи рассказывает про то оптимизацию пропуска - оптимизация, которая пропускает вызов Composable функции, входные параметры которой не изменились.
Советы:
👉 Используйте @Stable аннотацию для публичных параметров, например ViewModel
👉 Используйте ссылки на методы вместо лямбд
👉 Используйте remember для лямбд
👉 Используйте top level функции
👉 Используйте только stable типы в лямбдах
👉 Используйте отдельные модели для UI слоя на Compose, а модельки помечайте как Stable или Immutable
В статье найдете еще советов и больше подробностей
#compose
В рамках стрима я не смог красиво распараллелить обработку map в Flow (смотрите видео), но за выходные я покодил и нашел какое решение можно применить
Не скажу что оно лучше, но мне нравится тем что это каноничный подход обработки внутри flow, без внешних входных данных внутри операторов.
How to reuse data for previews in Jetpack Compose (2 мин)
В статье рассказывается как с помощью PreviewParameterProvider переиспользовать данные для полноценного превью Compose функций в Android Studio
#compose #androidstudio
MintPermissions - библиотека для работы с разрешениями, под капотом у которой корутины и Flow и из коробки покрыто часть стыковых кейсов
Разбор этой библиотеки делал недавно вместе с автором в рамках прямого эфира. Запись тут
How to prevent multiple clicks in Android Jetpack Compose (2 мин)
Делали ли вы решение, что элемент UI не нажимался 2+ раза при очень быстрых кликах? Я делал и ни раз, но было это уже больше 5 лет назад.
Автору статьи такое решение нужно и он рассказывает как его сделать в Compose
#compose