7 лучших докладов Mobius: версия EastBanc Technologies
Мы съездили на конференцию для мобильных разработчиков Mobius и решили рассказать, что из докладов запомнилось больше всего. Сссылки ведут на презентации.

- Нам понравился доклад Vyng про профайлинг [1]. Артур Бадретдинов сделал обзор инструментов, которые можно использовать для оптимизация отображения данных и анимации. Например, Gfxinfo показывает статистику кадров, а Hierarchy Viewer – иерархию и скорость отображения компонентов экрана. Были и другие инструменты. Идея доклада в том, что нужно всегда замерять, сколько времени что занимает, и какая у тебя иерархия. Если ты всё протоколируешь, то сможешь быстро найти ошибку. Ещё раз о пользе оптимизации UI.
- Было интересно послушать доклад про то, как делали приложение с голосовым управлением (Building voice responsive apps on iOS [2]). Помимо занимательной основной темы там прозвучала интересная мысль: неважно, какую задачу ты решаешь, всегда нужно смотреть немного шире. Например, как понять, что с приложением в данный момент разговаривает именно его пользователь, а не посторонний человек? В той ситуации это было сложно реализуемо. Как вариант — запрашивать разрешение к Motion Detector’у и с использованием дополнительной библиотеки определять, что это за человек. Библиотека ориентируется на привычки пользователя (как он достаёт телефон из кармана, как берет его со стола) и с вероятностью 90 процентов определяет, что это за человек. Это может пригодиться для enterprise-решений.
- Заинтересовал доклад об оптимизации работы с данными “How to fit a million stars into an iPhone [3]”. Разработчик сделал приложение с базой данных звёзд и их отображением на экране в дополненной реальности, столкнулся с проблемами работы с большим количеством информации и задумался о оптимизации. Даже если ты пишешь на Swift, не стоит забывать про то, что происходит “под капотом”, например, выравнивание данных [4]. В итоге, поигравшись со структурами, выполнив преобразования и еще немного хитростей, он ужал средний размер структуры в 4 раза. Хоть и часть методов уже была знакома, послушать было интересно и полезно.
- В докладе Андрея Бреслава про Kotlin было интересно послушать про заимствования из других языков. Тем более, он сам возглавляет разработку языка Kotlin. Также мелькнула новость о том, что возможно, вернут тернарный оператор. Наконец-то, многие разработчики просили его добавить.
- Доклад “Reverse engineering mobile apps: how, why, and what now? [5]” заставил задуматься о безопасности. Все знают, что Android-приложения легко декомпилируются и даже обфускация не сильно спасает, но, кажется, мало кто задумывается про iOS. Докладчик показал, что легко можно взломать как Android, так и iOS приложение, продемонстрировав это на живом примере. При достаточном количестве усилий можно легко вытаскивать из кода API-token. Очень важно учесть это при разработке приложений, где нужно работать с пользовательскими данными.
- Доклад про время сборки [6]для нас очень актуален. Если приложение представляет собой один большой монолит, то оно собирается очень долго, даже если поменять всего одну строчку кода. Решение – делить код на модули. При таком подходе будут пересобираться только измененные модули и напрямую зависимые от них. Также будет задействована параллельная сборка. Докладчик рассказал, как с помощью этого подхода ему удалось сократить время сборки с 3,5 минут до 30 сек.
- Было очень интересно послушать доклад Яндекс.Карт [7] об интеграции дополненной реальности в их iOS приложение. Дмитрий Тримонов не просто пересказал документацию, а очень подробно расписал процесс работы над задачей, возникшие трудности, способы их решения и даже провел небольшой экскурс в историю AR/VR/MR с ликбезом.
В целом конференция оказалась очень полезной. Через многие доклады протягивалась мысль о безопасности: пытайтесь по возможности всегда пользоваться HTTPS, смотрите, откуда берёте библиотеки, храните токены и другие личные данные в безопасном месте. И будет вам счастье (и вашим пользователям).
Остальные презентации докладов есть здесь [8].
Автор: eastbanctech
Источник [9]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/android-development/278902
Ссылки в тексте:
[1] доклад Vyng про профайлинг: https://downloads.ctfassets.net/2grufn031spf/31bpgPQ3kAQUmA8QKcwm6w/ef97445730165e216e59c12a76f56446/_______________________UI____________________.pdf
[2] Building voice responsive apps on iOS: https://assets.ctfassets.net/2grufn031spf/kJbQLT0J7EQUyIw44K4eA/4a1a09fe6ebea0f48de1bcce1183058d/Martin_Mitrevski_Building_Voice_Responsive_Apps_on_iOS.pdf
[3] How to fit a million stars into an iPhone: https://downloads.ctfassets.net/2grufn031spf/6r6ymKBvGgy0WwKA0mMYyy/2a3db3782e553836cec1d7021b3dac97/Konrad_Feiler_-_HowToFitAMillionStars.pdf
[4] выравнивание данных: https://ru.wikipedia.org/wiki/%D0%92%D1%8B%D1%80%D0%B0%D0%B2%D0%BD%D0%B8%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85
[5] Reverse engineering mobile apps: how, why, and what now?: https://assets.ctfassets.net/2grufn031spf/5Nu0a8SJkQA24WsekmAe4a/993660e4b2a9b2fc210470515866ae83/Micha___Ka__uz__ny_-_Reverse_Engineering_Mobile_Apps.pdf
[6] Доклад про время сборки : https://assets.ctfassets.net/2grufn031spf/4ceRC38gneAC2gS4qGKGsC/845a9cf351beaac8ea20d54519b81ec8/Nekliudov_Make_it_fast___Mobius.pdf
[7] доклад Яндекс.Карт: https://downloads.ctfassets.net/2grufn031spf/6zZde37gFGk088SaSMsIe6/31cf4f77d247c45cab073fa5ba631981/Trimonov_AR_in_YandexMaps.pdf
[8] здесь: https://mobiusconf.com/#schedule
[9] Источник: https://habr.com/post/354412/?utm_campaign=354412
Нажмите здесь для печати.