В докладе рассказывается о том, как устроена одна из ключевых концепций Jetpack Compose — позиционная мемоизация, а также рассматриваются различные примеры оптимизации кода, связанные с концепцией.
Дмитрий Григорьев
EPAM Systems
Начало основного контента
В докладе рассказывается о том, как устроена одна из ключевых концепций Jetpack Compose — позиционная мемоизация, а также рассматриваются различные примеры оптимизации кода, связанные с концепцией.
EPAM Systems
Доклад посвящен анимациям в Jetpack Compose. Спикер обсудит способы создания анимаций, типы анимаций, их отличия друг от друга и примеры реализации анимаций. Также рассматриваются способы кастомизации и настройки анимаций.
Кошелёк
В докладе рассказывается про атрибут inlinable
— как он влияет на компилируемый код и на производительность. Показано, как применять его в проектах. Спикер сравнит, как код работает с атрибутом inlinable
и без него. Также будут затронуты атрибуты: dynamicCallable
, _alwaysEmitIntoClient
и другие.
OZON
В докладе обсуждаются платформенные команды: для чего они нужны, чем занимаются, как оценивать их эффективность, а также вопрос о том, кому стоит идти в такие команды.
Skyeng
В докладе пойдет речь об инструменте контроля роста техдолга в проекте и возможностях SwiftSyntax.
Тимур расскажет, как можно организовать взаимодействие между нативным кодом Android-приложений и веб-страницами. При качественном исполнении можно получить унифицированный и кроссплатформенный UI, который можно менять на сервере по щелчку пальцев.
Дзен
Стояла задача: расширить покрытие контента приложения новыми Deep Link-ами. Все звучало просто, но, когда спикеры начали тестировать решение, появились неочевидные проблемы. Копнули глубже и провели 280+ тестов на 7 разных устройствах, 7 версиях Android, 6 оболочках, 7 приложениях. И откопали кучу инсайтов, которые сэкономят ваше время и силы при работе с Deep Link!
Технократия
Технократия
В докладе приведен обзор оптимальной архитектуры фермы эмуляторов Android-устройств, рассказано про разработку с использованием минимального количества внешних зависимостей, и, как следствие, с возможностью гибкой настройки.
Space307
Говорим о расписании, сессиях и активностях. Подключайтесь, чтобы узнать, что вас будет ждать в эфире в ближайшее время!
Agro.Сlub
Кошелёк
Кратко о том, кто такие Flutter и Dart (не Вейдер) и с чем их есть (плюсы/минусы/нюансы).
В докладе будут ретроспектива, история версий приложения, дисбаланс с релизами для разных платформ, текущее положение вещей в приложении. Также вы узнаете о реализации новой функциональности, параллельности версий на обеих платформах, а также о том, сколько же нужно разработчиков, чтобы поддерживать и реализовывать новые функции приложения.
SDUI — популярный подход для построения гибкого пользовательского интерфейса. В этом докладе Анна расскажет про развитие SDUI в большом банковском приложении — от самых простых динамических полей до зависимых друг от друга экранов с полностью динамическим контентом.
Альфа-Банк
Спикер расскажет про плавный поворот View и видеоконтента с анимациями при заблокированной Activity, использование угла поворота с гироскопа смартфона, а также затронет нюансы, на которые стоит обратить внимание при выборе такого подхода.
VK Звонки
Спикер расскажет, в каком состоянии (спойлер: заброшенном) было принято мобильное приложение для сотрудников розничной сети МТС и что было сделано, чтобы это исправить.
МТС Диджитал
МТС Диджитал
Если приложение работает без падений, это еще не всё. Что если за этим стоит полнейшее легаси с нулевым покрытием тестами, многочасовые сборки и несколько недель на регресс? Как это понять? Сергей расскажет о критериях качества продукта, разработки и тестирования. А также о том, как собирать метрики и визуализировать их.
Кошелёк
Почему все вдруг начали делать декларативный UI в мобилке? В чем его плюсы и минусы? Какой из подходов наиболее «православный»? Обо всем этом пойдет речь в докладе.
Mad Brains
Цель доклада — разрушить стереотипное представление о «Чистой Архитектуре».
Кошелёк
Спикеры расскажут, как адаптировали Яндекс.Такси для незрячих и как встроить доступность в процессы разработки.
Яндекс
Яндекс
Применение Dependency Injection в Android-разработке. Какие DI-фреймворки существуют, и как они применяются в проектах Android-приложений сегодня — их достоинства и недостатки.
Яндекс Go
Тревел-индустрия регулярно подкидывает разработчику массу интересных задач даже без коронавируса и закрытия воздушных зон.
Реализовать первый в России независимый функционал для продажи электронных билетов на электрички. Продумать и внедрить одну удобную фичу, когда авиакомпаний десятки и у каждой всё ну очень по-своему. И ничего не поломать в процессе: потому ответственность чертовски высока!
Спикеры расскажут, как работают под капотом приложения для путешественников. И покажут словарик для айтишников, погружающихся в тему авиаперевозок.
У большинства айтишников найдутся свои истории о собеседованиях: забавные, печальные, странные. Из одних можно сделать полезные выводы, а другие просто дают понять «что в индустрии бывает». Обсудим, вспомним, поделимся лайфхаками.
Подключайтесь!
Доклад том, как для общения с сервером по протоколу JSON-RPC была создана своя библиотека в стиле Retrofit. Речь пойдет о том, что такое JSON-RPC, почему не были использованы готовые решения, что в Retrofit под капотом, при чем тут рефлексия и как реализовать аналог Interceptor-ов из OkHttp.
Garage Eight
Декларативный UI активно интегрируется в мобильную разработку: новые интерфейсы, технологии. Что-то модно, что-то вышло из моды, а что-то вечно.
Андрей и Анатолий обсудят основные прогнозы использования декларативного UI и попробуют выяснить, куда же все это движется.
JUG Ru Group
Mad Brains
Разработка для бизнес-сегмента может сильно отличаться от разработки для рядовых пользователей App Store. Открываются дополнительные возможности, основанные на Apple MDM (Mobile Device Management), также для приложения становятся доступны некоторые технологии, использование которых ограничено при распространении через App Store.
Лаборатория Касперского
Это не про TDD и то, как хорошо иметь тесты. Речь пойдет о том, как тест может решать насущные проблемы разработчика и облегчить ему жизнь.
Spark Networks
Говорим о расписании, сессиях и делимся информацией. Подключайтесь, чтобы узнать, что вас будет ждать в эфире в ближайшее время!
Surf
Surf
Доклад посвящен использованию Koin в активно растущем Android-приложении. В частности, переходу на многомодульную архитектуру с API и impl модулями. Будет рассмотрена возможность использования Koin в качестве DI фреймворка в контексте многомодульности.
Тимофей расскажет, как в Авито плохо жилось с CocoaPods и как хорошо живется с Independency. Речь пойдет про линкинг и сборку проекта.
Авито
Спикер расскажет об используемом подходе к визуализации бизнес-логики по исходному коду программы и реализации MVI-архитектуры, которая этому способствует.
Доклад будет интересен тем, кто выбирает MVI-библиотеку для своего проекта или имеет крупные стейт-машины в текущем проекте и хочет их визуализировать.
Контур
В докладе Бен расскажет, как развивался релизный процесс на его проекте, с чего начали и к чему пришли. Поговорит о том, какие шаги релизного процесса удалось автоматизировать, покажет и расскажет про админку, с помощью которой релиз-менеджер управляет релизом.
Доклад будет интересен тем, кому близка тема построения релизного процесса, любителям автоматизации и скриптов.
Vivid Money
Викторина на Mobius 2022 Spring. Участвуют все! Победитель получит звание чемпиона и кое-что еще :) Встретимся на игре!
Agro.Сlub
Кошелёк
Как в супераппе Яндекса подходят к анализу и контролю скорости старта приложения на Android.
Яндекс
В компании спикера есть три основных проекта, и в какой-то момент команда начала создавать артефакты (дизайн-система, Server-Driven UI , целые feature flow), которые может подключать каждый проект.
Абакар расскажет, какие плюсы это принесло, и с какими минусами пришлось столкнуться.
Альфа-Банк
Доклад о том, как мигрировать кодовую базу приложения с Kotlin-синтетики на view-binding, написав для этого IDEA плагин.
Работа.ру
Олег расскажет про свой опыт связывания iOS-мобильного приложения с внутренней АТС банка.
Московский кредитный банк
Говорим о расписании, сессиях и активностях. Подключайтесь, чтобы узнать, что вас будет ждать в эфире в ближайшее время!
Agro.Сlub
Surf
Строки — это сложно: графемы, кодпоинты, нормализация, сегментация. В этом докладе пойдет речь о том, как это получилось и как с этим работать.
Подводим итоги, вспоминаем яркие моменты и рассказываем о дальнейших планах. Заходите на трансляцию, чтобы ничего не пропустить!
Agro.Сlub
Surf
При выходе на новую или даже первую работу, разработчик сталкивается с тем, что нужно не только писать код, но и вливаться в команду — адаптироваться под практики, притираться к людям, изучать неформальные правила. И кажется, что это намного сложнее, чем просто изучить нужный стек.
Но даже если этот этап успешно преодолен, то по мере роста возникает новый вызов — как оставаться друзьями с теми, кем сегодня нужно управлять?
В студии соберутся тимлиды с разработчиками и обсудят тонкости взаимоотношений на работе.
Как стать частью команды? Как максимально быстро и комфортно для себя адаптироваться? Как оставаться друзьями с теми, кем управляешь? И надо ли это вообще?
Подключайтесь!
Доклад о том, как упростить жизнь разработчика в Kotlin Multiplatform при разработке мультиплатформенного фиче-модуля. Архитектура, Redux, DI. Проблемы и способы их решения.
Яндекс
Спикер расскажет про проблемы, с которыми столкнется команда при затаскивании корутин в свой проект. Доклад сфокусирован на обработке ошибок — вы не услышите про то, что такое launch
и async
, но вспомните про try-catch
. Узнаете про coroutineExceptionHandler
и про то, как эти инструменты стреляют в ногу. Спикер расскажет, как по его мнению обезопасить себя от этих выстрелов.
InDriver
Когда начинались первые эксперименты с Flutter, спикеры даже не думали о том, что удобных способов распространения приложений, возможности оплачивать аккаунты разработчиков, доступов к проприетарным фреймворкам может в один момент не стать. И никто не подозревал, что Flutter от этого может каким-то образом спасти.
Flutter-приложение, будучи адаптированным под веб, с удивительной лёгкостью превращается в полноценное PWA, которое весьма убедительно мимикрирует под настоящее мобильное приложение. Ну а пока час Х не наступил, вы можете собирать привычные артефакты из той же кодовой базы.
Из доклада вы узнаете о том, с какими проблемами вы столкнетесь на пути конвертации вашего мобильного Flutter-приложения в веб, а также будут освещены вопросы UX, безопасности, тестирования и деплоя. Поговорим и о неизбежных ограничениях.
Surf
Surf
Абакар, Лёша и Виталий прошли тернистый путь упорядочивания хаоса в процессе адаптации новичков в команде мобильной разработки. В этой BOF-сессии ребята решили собраться и поговорить про все боли и сложности, с которыми они столкнулись, и поделиться тайной того, как можно решить раз и навсегда проблему адаптации новых разработчиков. Они расскажут про процесс подбора, наставничество, флоу работы, инструменты адаптации и лайфхаки.
Максим и Евгений — инженеры, которые много собеседуют, но периодически и сами выступают в роли кандидатов. Они поделятся практиками и ресурсами, которые помогают им проходить интервью. Иными словами, опишут процесс найма с обратной стороны.
Среди прочего, вы узнаете, как меняется техническое интервью в зависимости от позиции и как кандидат может использовать это в свою пользу.
О чем не забыть при подготовке заявки или собеседовании в крупной компании? А как легко завалить любой из этапов, вплоть до финального, даже если вы хороши?
Все с примерами, ссылками и ответами на вопросы.
ex-Туту.ру
Туту.ру
Подводим итоги, вспоминаем яркие моменты и рассказываем о дальнейших планах. Приходите в зал или подключайтесь на трансляцию, чтобы ничего не пропустить!
Surf
Surf
Вы узнаете, как в рамках Яндекс.Маркета был запущен эксперимент по использованию Flutter, реализован BDU на нем, к чему это привело и с чем столкнулись в процессе.
Спикер покажет некоторые метрики продукта и приложения, поговорит о настоящей кроссплатформенности и о том, возможна ли она вообще.
Яндекс.Такси
Построить удобную и гибкую навигацию в iOS-приложении непросто, ведь далеко не всегда требуется просто перейти с одного экрана на другой. Главные сложности возникают, когда необходимо открыть целую цепочку экранов.
Но что если нужно еще и проверить авторизацию? Что если экраны связаны друг с другом, а нужный экран уже открыт где-то в приложении?
Рано или поздно все команды сталкиваются с вопросом, как построить навигацию в iOS-приложении, чтобы ее было удобно поддерживать и расширять. В hh.ru прошли долгий путь в построении навигации для приложений. Пробовали разные подходы: от одного большого enum, который знал обо всех экранах в приложении, до координаторов.
В поисках идеального решения для навигации в hh.ru пришли к собственному, которым и хотят поделиться с сообществом в виде опенсорс-библиотеки для iOS- и tvOS-приложений.
HeadHunter
В быстро растущем продукте при работе фича-командами (фреймворк LeSS) неизбежно возникают разные вызовы. И здесь помогают Матрицы компетенций, созданные для того, чтобы способствовать развитию разработчиков.
В докладе рассмотрим, как сделать использование Kotlin-модуля со стороны Swift комфортным, а код — надежным. Увидим, почему и как был создан Gradle-плагин moko-kswift и какими еще средствами можно улучшать опыт iOS-разработчиков в KMM.
IceRock Development
Фантазируем, что изменится в разработке через 20 лет. Будем ли мы кодить с телефона и программировать холодильники? Заменят ли программистов нейросети? Выживет ли кроссплатформа и умрет ли натив?
Поговорим на популярную в последнее время тему: инфраструктурные команды в мобильной разработке.
Кто они? Для чего нужны и нужны ли вообще? Где искать людей в такие команды?
Рассмотрим основные функции: настройки скорости сборок, запуск проверок на CI/CD, метрики, самописные плагины и прочую магию. А потом подискутируем на тему общей инфраструктурной команды в Android и iOS.
Каждый год выходит новая версия Android (не считая минорных релизов), и каждый раз разработчики получают новые возможности для пользователей и ограничения для API, а также новомодную замену для них.
В докладе Кирилл резюмирует все изменения актуальных версий Android и расскажет про самые важные аспекты. Также вы узнаете, что можно интегрировать к себе в приложение и какие оптимизации произошли под капотом Android за последние 8 лет.
Тинькофф
Говорим о расписании, сессиях и делимся информацией. Приходите в зал или подключайтесь, чтобы узнать, что вас будет ждать в ближайшее время!
Surf
Surf
Важной задачей любой компании является повышение качества продукта. В докладе представлен подход Яндекс.Маркета к решению этой задачи. Попутно рассмотрены проблемы качества и роль разарботчиков в их исправлении.
Яндекс.Маркет