Как стать автором
Поиск
Написать публикацию
Обновить

Mobius 2024 offline. День первый

Время на прочтение4 мин
Количество просмотров2.4K

Привет, Хабр!

Сегодня по горячим следам расскажу, как прошёл первый день конференции мобильных разработчиков Mobius в этом году.

Часть 2

Он был очень насыщенным, мне удалось побывать на шести докладах, в основном по android-разработке.

Проходит мероприятие в кластере Ломоносов - очень красивая и технологичная площадка снаружи и внутри. Сегодня, правда, было очень жарко, встречаем лето. При регистрации дают фигурку очаровательного Mobius-утенка, сохраню на память.

Тулкиты кодогенерации Android vs iOS, Анна Жаркова, Usetech

Первый доклад сегодня был насыщенным и хардкорным: Аня кратко рассказала о компиляции в целом и подробно - о способах кодогенерации в Android Studio (IntelliJ IDEA) и Xcode. С помощью кодогенерации можно решить самые разные задачи: от генерации View до упрощения генерации архитектурных компонентов.
Рассмотрели PSI (Programming Structure Interface), Xcode template, Android Studio Wizard template, создание собственных плагинов, Xcode Source Editor и SPM плагины, Android build-time генераторы (KSP, KCP). Упомянули ChatGPT, Copilot и Gemini, куда же без них.
Провели соревнование между Android и iOS, у кого инструменты удобнее. Спойлер: победила дружба)

https://mobiusconf.com/talks/536b1d2f4e0b4be8a60da58d4095c8c7/?referer=/schedule/today/

Нетворкинг

На первой “переменке” удалось побывать у стендов Ozon Tech и hh.ru. У обоих классные квесты, от классических опросов до призов за потение на гребном тренажёре. Лайк стикерам hh.ru, особенно с горящей перед дедлайном попой)

Как избавиться от рекурсии, или Как мой код попал в Google, Максим Сидоров, SberDevices

Второй доклад сегодня был посвящён задачке, которую Максим дает ребятам на собесах: обойти иерархию вью во вью группе и найти удовлетворяющие предикату. Мы посмотрели, какими алгоритмами можно заменить рекурсию и как это влияет на производительность.
В заключение Максим рассказал, как ему удалось оптимизировать функцию ViewGroup.descendant(), которая занимала колоссальное время из-за функции yield и того, что под капотом у неё вложенные sequence.
Изменения уже приняты Google, история нескольких issue тоже интересная)

Основной вывод - если глубина вложенности небольшая, наиболее оптимальным видится использовать рекурсию, не рискуя столкнуться с переполнением стека. Если риск есть, придётся отказываться от рекурсии в пользу более медленных алгоритмов.

https://mobiusconf.com/talks/9e3b0e1d085e46f6b840f0e4dc752060/?referer=/schedule/today/

Нетворкинг

СберАвтоТех и Райффайзен Банк запомнились хардкорными викторинами по Android и Compose. Миссия Вспомнить всё)
Ребята из avito.tech представили новый инструмент для параллельного запуска автотестов - Emcee (https://emceetool.io/).

BDUI как стратегия мобильного приложения, Денис Александров, Yandex

“Киберсоциализм, который никогда не наступит” - так Денис описал BDUI. И всё-таки ребята из Яндекса создали своё решение, которое успешно работает для b2b приложения, в котором часто меняется бизнес-логика, но несложный, предсказуемый UI. Интересно было послушать, как в существующую архитектуру бэкенда (BFF) постепепнно встраивали BDUI-компоненты. Плюсы - фронтенд стал очень быстрым, нагрузка на бэк почти неощутима, пользователи не заметили разницы. Минусы - долго пришлось разрабатывать, переписывать, погружаться в дебри бэкенда.
Яркой презентации в тон редизайна Яндекс Маркета респект)

https://mobiusconf.com/talks/8274a0f5e50a4f40965dbb60ac30101d/?referer=/schedule/today

Gradle-сборка. Измеряем самое важное, Юрий Анисимов, Тинькофф

Болезненная для многих приложений тема времени gradle-сборки и в целом, выполнения тасок)

Юрий рассказывает о собственном переиспользуемом gradle-плагине Тинькофф для сбора метрик сборки, который писали, чтобы оперативно отловить, когда произошла её деградация. Ведь каждое обновление окружения, добавление новой библиотеки приводит к пересборке проекта. Сюда же антивирусы и файерволы, что особенно актуально для приложений мобильных банков.
Поговорили немного и про способы оптимизировать время сборки и такие инструменты, как Focus dropbox плагин и собственные решения крупных финтех приложений для уменьшения скоупа сборки.

https://mobiusconf.com/talks/f9f7e56446a7462eb8e3e4ba6cc64770/?referer=/schedule/today/

Нетворкинг

Вот такой симпатичный беспилотник представили Sber AutoTech и рассказали, как его тестировали. Жаль, салон нельзя фотографировать)

ByteWeaver. Инструментирование байт-кода во имя великого блага, Александр Асанов, VK/OK

Адександр динамично и с юмором рассказал о новом инструменте для патчинга байт-кода во время исполнения. Вот бы лекции про интерпретацию кода в универе были такими)
Нам бывает нужно править байт-код чтобы, например, залогировать вызовы некоторых методов или найти причину хитрого бага в коде, к которому нет доступа. Ещё одно полезное применение - сделать SysTrace более информативным.
Отдельное спасибо за экскурс в байт-код Dalvik. 

https://mobiusconf.com/talks/cb19362b215b43658c34dc802c62e899/?referer=/schedule/today/

Установка Android-приложений от доисторических времен до наших дней, Анатолий Гусев, VK/RuStore

Анатолий посвятил нас в API установки приложений в Android разных версий, в том числе последней, 14. Подробно поговорили про PackageInstaller и запрос разрешения на установку прилы.
Особенно интересно было послушать про неуловимые баги установки приложений на определенных устройствах Xiaomi. Вывод - всегда тестируйте на Xiaomi, причём чем больше разных устройств, тем лучше)

https://mobiusconf.com/talks/6234faa5dfc7458695367b33d341a757/?referer=/schedule/today/

Нетворкинг и афтерпати

В финальных перерывах особенно запомнились Яндекс 360 - ребята устроили CTF от мира мобильной разработки и заставили найти пять багов в приложении за 20 минут.
На афтерпати тоже посчастливилось поучаствовать в кодинг-битве от Яндекса, мозг кипел, но было весело.

В конце поста кину ещё несколько фото.
Еще больше впечатлений в моём ТГ канале https://t.me/android_w_m
Если упустила что-то интересное сегодня, делитесь в комментах! Расскажите о своих впечатлениях.
А мне пора чистить зубки и ложиться спать, до завтра!

Теги:
Хабы:
Всего голосов 7: ↑5 и ↓2+4
Комментарии4

Публикации

Ближайшие события