Recomposition in Jetpack Compose
GitHub репо с набором практических примеров и кода для избежания бесполезной рекомпозиции в Jetpack Compose
💻 Слайды
#compose
GitHub репо с набором практических примеров и кода для избежания бесполезной рекомпозиции в Jetpack Compose
💻 Слайды
#compose
👍38💩7
Из-за санкций вам пришлось менять какие-то инструменты/библиотеки в разработке или софт в рамках компании?
Final Results
25%
Да
43%
Нет
5%
Не уверен(а)
28%
Не участвую в опросе
💩11👍7
Непрерывность мобильной разработки — как это реализовано у нас
Актуальная статья от СберЗдоровье. Ребята рассказывают как страхуются и переводят свой CI, аналитику, отслеживания стабильности/крешей приложений в условия того что нужны сервисы, которые наверняка не отберут (пока Firebase и Google Play).
В итоге стек:
👉 AppMetrica (автор Яндекс)
👉 Self hosted Snowplow
👉 Self hosted Sentry
👉 Пуши в AppMetrica и собственная реализация (а что с гарантиями доставки?)
👉 Flagr для A/B тестов (хотя выбор был большой)
👉 Тестовые сборки рассылаются через артефакты в GitLab CI
👉 Self Hosted GitLab
👉 2GIS карты вместо Google Maps
Пишите в комментариях какие альтернативы стали использовать вы как для рабочих сервисов так и нет
Актуальная статья от СберЗдоровье. Ребята рассказывают как страхуются и переводят свой CI, аналитику, отслеживания стабильности/крешей приложений в условия того что нужны сервисы, которые наверняка не отберут (пока Firebase и Google Play).
В итоге стек:
👉 AppMetrica (автор Яндекс)
👉 Self hosted Snowplow
👉 Self hosted Sentry
👉 Пуши в AppMetrica и собственная реализация (а что с гарантиями доставки?)
👉 Flagr для A/B тестов (хотя выбор был большой)
👉 Тестовые сборки рассылаются через артефакты в GitLab CI
👉 Self Hosted GitLab
👉 2GIS карты вместо Google Maps
Пишите в комментариях какие альтернативы стали использовать вы как для рабочих сервисов так и нет
👍29💩11
Optimizing Android Performance (7 мин)
Советы по ускорению Android приложения и каких операций стоит избегать. Если копались в тему то мало нового будет, но всем рекомендую пройтись
Может видео запилить на тему основных советов? Пишите в комментариях чтобы я понял
Советы по ускорению Android приложения и каких операций стоит избегать. Если копались в тему то мало нового будет, но всем рекомендую пройтись
Может видео запилить на тему основных советов? Пишите в комментариях чтобы я понял
👍78💩10
Запросы в сеть с Clean Architecture — Обработка ошибок с сервера. Boilerplate ч. 3
Пример как можно обрабатывать ошибки при использование принципов Clean Architectyre. Корутины, Flow, ArrowKt,
#architecture
Пример как можно обрабатывать ошибки при использование принципов Clean Architectyre. Корутины, Flow, ArrowKt,
#architecture
👍33💩10
Вы знаете что из-за Null Safety в Kotlin после компиляции остаются полные названия переменных, что даже после обфускации дает злоумышленникам возможность легче разобраться в вашем коде 😮
😧 Помимо этого куча кода остается, что негативно влияет на скорость компиляции и выполнения, хотя он уже не нужен.
Больше подробностей в новом 👉👉👉 посте @kotlin_broadcast
#performance
😧 Помимо этого куча кода остается, что негативно влияет на скорость компиляции и выполнения, хотя он уже не нужен.
Больше подробностей в новом 👉👉👉 посте @kotlin_broadcast
#performance
👍36💩9👏1
📺 Code Review в прямом эфире (2+ часа)
В прямом эфире разобрал код подписчика на хорошие и плохие решения. Проект - библиотека для упрощения работы с разрешениями на Android. Построена на корутинах и модных современных практика
👉 Код проекта здесь
В прямом эфире разобрал код подписчика на хорошие и плохие решения. Проект - библиотека для упрощения работы с разрешениями на Android. Построена на корутинах и модных современных практика
👉 Код проекта здесь
👍21💩12
Code Review 4 августа мне очень зашел. Однозначно проводить такой формат с автором кода получается интереснее и полезнее для нас обоих. Подавайте свои заявки здесь, а все вопросы в комментариях
👍67💩12
How to prevent multiple clicks in Android Jetpack Compose (2 мин)
Делали ли вы решение, что элемент UI не нажимался 2+ раза при очень быстрых кликах? Я делал и ни раз, но было это уже больше 5 лет назад.
Автору статьи такое решение нужно и он рассказывает как его сделать в Compose
#compose
Делали ли вы решение, что элемент UI не нажимался 2+ раза при очень быстрых кликах? Я делал и ни раз, но было это уже больше 5 лет назад.
Автору статьи такое решение нужно и он рассказывает как его сделать в Compose
#compose
👍35💩12
📺 Full Guide to Dependency Scopes with Dagger-Hilt (20 мин)
📺 Как работает видеостриминг на Android. Интервью Кинопоиск (32 мин)
📺 Сохранение и восстановление стейта в кастомвью (18 мин)
📺 Android с нуля. Что выбрать Compose или XML (12 мин)
📺 Много графиков в WebView на Android. Интервью TradingView (1+ час)
📺 Local Notifications in Android - The Full Guide (28 мин)
📺 Code Review от Кирилла. Библиотека для работы с разрешениями на корутинах (2 часа)
📺 Now in Android: 65 (6 мин)
Ранний доступ к новым видео и эклюзивам на Boosty и Patreon
#ПодборкаВидео
📺 Как работает видеостриминг на Android. Интервью Кинопоиск (32 мин)
📺 Сохранение и восстановление стейта в кастомвью (18 мин)
📺 Android с нуля. Что выбрать Compose или XML (12 мин)
📺 Много графиков в WebView на Android. Интервью TradingView (1+ час)
📺 Local Notifications in Android - The Full Guide (28 мин)
📺 Code Review от Кирилла. Библиотека для работы с разрешениями на корутинах (2 часа)
📺 Now in Android: 65 (6 мин)
Ранний доступ к новым видео и эклюзивам на Boosty и Patreon
#ПодборкаВидео
👍25💩14🔥2
MintPermissions - библиотека для работы с разрешениями, под капотом у которой корутины и Flow и из коробки покрыто часть стыковых кейсов
Разбор этой библиотеки делал недавно вместе с автором в рамках прямого эфира. Запись тут
Разбор этой библиотеки делал недавно вместе с автором в рамках прямого эфира. Запись тут
🔥44💩21👍2🤔2
How to reuse data for previews in Jetpack Compose (2 мин)
В статье рассказывается как с помощью PreviewParameterProvider переиспользовать данные для полноценного превью Compose функций в Android Studio
#compose #androidstudio
В статье рассказывается как с помощью PreviewParameterProvider переиспользовать данные для полноценного превью Compose функций в Android Studio
#compose #androidstudio
👍16💩7👎5🔥1
Хочу лайвкодинг провести не вечером в будний, а с утра в субботу в 11:00 (GMT+3). Как вам?
Final Results
25%
Круто!
3%
Нет, в другое время/день (в комментариях пишите)
47%
Все равно в записи смотрю
12%
Не смотрю вообще
13%
Не участвую в опросе
💩29👍27
В рамках стрима я не смог красиво распараллелить обработку map в Flow (смотрите видео), но за выходные я покодил и нашел какое решение можно применить
Не скажу что оно лучше, но мне нравится тем что это каноничный подход обработки внутри flow, без внешних входных данных внутри операторов.
Не скажу что оно лучше, но мне нравится тем что это каноничный подход обработки внутри flow, без внешних входных данных внутри операторов.
💩40👍17🤔15🔥2
Forwarded from Kotlin Multiplatform Broadcast (Кирилл Розов)
Магия Dispatcher'ов и как сделать свой Main
Разбор работы CoroutineDispatcher в корутинах, а главное как работает Dispatchers.Main в Android
#coroutines #android
Разбор работы CoroutineDispatcher в корутинах, а главное как работает Dispatchers.Main в Android
#coroutines #android
👍30💩10👎2
Gotchas in Jetpack Compose Recomposition
Оптимизация рекомпозиции - залог успеха для быстрой работы Compose. Автор статьи рассказывает про то оптимизацию пропуска - оптимизация, которая пропускает вызов Composable функции, входные параметры которой не изменились.
Советы:
👉 Используйте
👉 Используйте ссылки на методы вместо лямбд
👉 Используйте remember для лямбд
👉 Используйте top level функции
👉 Используйте только stable типы в лямбдах
👉 Используйте отдельные модели для UI слоя на Compose, а модельки помечайте как Stable или Immutable
В статье найдете еще советов и больше подробностей
#compose
Оптимизация рекомпозиции - залог успеха для быстрой работы Compose. Автор статьи рассказывает про то оптимизацию пропуска - оптимизация, которая пропускает вызов Composable функции, входные параметры которой не изменились.
Советы:
👉 Используйте
@Stable аннотацию для публичных параметров, например ViewModel👉 Используйте ссылки на методы вместо лямбд
👉 Используйте remember для лямбд
👉 Используйте top level функции
👉 Используйте только stable типы в лямбдах
👉 Используйте отдельные модели для UI слоя на Compose, а модельки помечайте как Stable или Immutable
В статье найдете еще советов и больше подробностей
#compose
👍32💩15👎1
За последние 2 года я круто развился в техническом пиаре и уже много раз занимался ведением людей в написании статей и оформлением Open Source проектов.
Если вы хотите написать статью, но никогда это не делали или не знаете как, да и тему не можете выбрать, то во всем этом я могу вам помочь! Теперь для патронов есть возможность подключит меня в качестве ментора для написании статьи! Подписка тут
Если вы хотите написать статью, но никогда это не делали или не знаете как, да и тему не можете выбрать, то во всем этом я могу вам помочь! Теперь для патронов есть возможность подключит меня в качестве ментора для написании статьи! Подписка тут
👍73💩51🔥6❤🔥1👎1
🔴 Начинаем экспертное собеседование
Саша Блинов из Head Hunter будет собеседовать Лешу Быкова из Revolut на позицию Team Lead в продуктовую компанию. Проверять будут навыки управления, Soft Skills, а также как он подойдет для продукта
P.S. запись останется на канале после трансляции
Саша Блинов из Head Hunter будет собеседовать Лешу Быкова из Revolut на позицию Team Lead в продуктовую компанию. Проверять будут навыки управления, Soft Skills, а также как он подойдет для продукта
P.S. запись останется на канале после трансляции
👍48💩22🔥8❤1👎1
Copy-paste improvements in Android13 (2 мин)
Обзор обновление работы с буфером обмена в Android 13:
👉 Перед копирование информации в буфер надо явно помечать чувствительная ли она или нет
👉 Всплывашка с превью того что скопировали
#android13
Обзор обновление работы с буфером обмена в Android 13:
👉 Перед копирование информации в буфер надо явно помечать чувствительная ли она или нет
👉 Всплывашка с превью того что скопировали
#android13
👍23💩12👎2❤🔥1