- PVSM.RU - https://www.pvsm.ru -
Всем привет! В прошлую субботу, 29 февраля, прошёл наш первый митап для Android-разработчиков в Нижнем Новгороде. Спикеры выступали с докладами о создании красивых анимаций с помощью MotionLayout, Kotlin Coroutines, CI/CD инфраструктуре для Android и дизайн-системе Авито.
Под катом вас ждут видеозаписи всех выступлений с таймкодами для удобной навигации, ссылки на презентации и фотоотчёт с митапа.

Юнит speed в Авито разрабатывает инструменты для CI/CD Android, iOS и web монолита. CI/CD инфраструктуру для Android ребята развивают уже больше 3 лет, а в начале 2020 года вынесли её в open source.
Сергей рассказал, какую пользу мы видим, работая в open source и как использовать наш код. Вы узнаете, счего начать работу с репозиторием, где задавать вопросы и какие задачи можно решить с помощью наших инструментов.
В трансляции про этот доклад слушатель написал «Очень приятная подача, как у юмористов-стендаперов современных», так что рекомендуем не только в информационных целях, но и в развлекательных.
Вот репозиторий проекта [1], о котором рассказывал Сергей. Любые вопросы по нему можно задавать в комментариях к статье или команде в отдельном телеграм-чате [2].
00:03 [3] — Представление спикера и доклада
01:25 [4] — Команда опенсорсного продукта, и чем она занимается в Авито
02:51 [5] — Продукты или компоненты команды
08:42 [6] — Почему перенесли разработку в open source
16:30 [7] — Как использовать наш open source
18:35 [8] — Как начать изучение репозитория
21:24 [9] — Как использовать инструменты в реальных проектах
27:12 [10] — Ответы на вопросы слушателей
Андрей рассказал о том, что такое MotionLayout и как с ним работать. Он показал несколько примеров использования этого инструмента в интерфейсах приложений, а не для анимации квадратиков. После просмотра доклада доклада станет понятнее, какую магию Google предоставляет из коробки, а что придётся кастомизовать.
Примеры анимированных с помощью MotionLayout интерфейсов от Андрея можно посмотреть на Гитхабе [12].
00:00 [13] — Представление спикера и доклада
01:44 [14] — Коротко о MotionLayout
04:52 [15] — Как работать с MotionScene
08:20 [16] — Примеры интерфейсов
31:38 [17] — Плюсы и минусы инструмента
33:50 [18] — Где стоит применять MotionLayout, а где он будет избыточным
36:35 [19] — Ответы на вопросы слушателей
Доклад о том, что вообще такое дизайн-система, зачем она нужна Авито и чем занимается её команда. Андрей разбирает распространённые ошибки организации и проектирования UI и делится опытом внедрения скриншотных тестов в продакшн.
00:00 [21] — Представление спикера
00:34 [22] — Чем занимается команда дизайн-системы
04:15 [23] — Про библиотеки компонентов и их проблемы
08:00 [24] — Про Design App Авито
12:09 [25] — Рефакторинг базовых сущностей
16:47 [26] — Lint
19:49 [27] — Скриншотные тесты
26:07 [28] — Выводы
27:31 [29] — Ответы на вопросы слушателей
Подход "Kotlin Coroutines First" уже не за горами. Доклад Кирилла о том, что современные Android-приложения эффективно строятся с использованием Kotlin Coroutines для выполнения асинхронных операций, а все современные библиотеки из Jetpack подталкивают к их использованию.
00:00 [31] — Представление спикера
02:09 [32] — Что стоит учитывать при разработке под современные устройства на Android
05:57 [33] — Java-потоки vs coroutines
08:17 [34] — Structured concurrency
11:23 [35] — Flow: реактивные Coroutine
16:54 [36] — ViewModel + Coroutines + KTX
18:35 [37] — LiveData + Coroutines + KTX
24:18 [38] — Lifecycle + Coroutines + KTX
26:55 [39] — Сторонние библиотеки с поддержкой Coroutine
29:04 [40] — Свой адаптер для асинхронного подхода для Coroutine
31:57 [41] — Свой адаптер для асинхронного потока данных для Flow
33:39 [42] — Архитектура Android приложения на основе Coroutine
37:22 [43] — Заключение
39:45 [44] — Ответы на вопросы слушателей
Плейлист со всеми видео можно найти на нашем ютуб-канале [46].

Фотографии с митапа мы выложили в Фейсбуке [47] и ВКонтакте [48]. Посмотрите, как всё прошло, и отмечайте себя и друзей.
Мойте руки с мылом и не болейте. До новых встреч!
Автор: anna_lesnykh
Источник [49]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/dizajn-interfejsov/348598
Ссылки в тексте:
[1] репозиторий проекта: https://github.com/avito-tech/avito-android
[2] в отдельном телеграм-чате: https://t.me/avito_android_opensource
[3] 00:03: https://youtu.be/_CN0naVbkoA?t=3
[4] 01:25: https://youtu.be/_CN0naVbkoA?t=85
[5] 02:51: https://youtu.be/_CN0naVbkoA?t=171
[6] 08:42: https://youtu.be/_CN0naVbkoA?t=522
[7] 16:30: https://youtu.be/_CN0naVbkoA?t=990
[8] 18:35: https://youtu.be/_CN0naVbkoA?t=1115
[9] 21:24: https://youtu.be/_CN0naVbkoA?t=1284
[10] 27:12: https://youtu.be/_CN0naVbkoA?t=1632
[11] Посмотреть презентацию Сергея: http://bit.ly/32OFrwm
[12] на Гитхабе: https://github.com/andreytumarinson/MotionLayout-sample
[13] 00:00: https://youtu.be/m2fyCfm0ijY?t=3
[14] 01:44: https://youtu.be/m2fyCfm0ijY?t=104
[15] 04:52: https://youtu.be/m2fyCfm0ijY?t=292
[16] 08:20: https://youtu.be/m2fyCfm0ijY?t=500
[17] 31:38: https://youtu.be/m2fyCfm0ijY?t=1898
[18] 33:50: https://youtu.be/m2fyCfm0ijY?t=2030
[19] 36:35: https://youtu.be/m2fyCfm0ijY?t=2195
[20] Посмотреть презентацию Андрея из MERA: http://bit.ly/2TFNEPk
[21] 00:00: https://youtu.be/OzlsWfi1zPA?t=3
[22] 00:34: https://youtu.be/OzlsWfi1zPA?t=34
[23] 04:15: https://youtu.be/OzlsWfi1zPA?t=255
[24] 08:00: https://youtu.be/OzlsWfi1zPA?t=480
[25] 12:09: https://youtu.be/OzlsWfi1zPA?t=729
[26] 16:47: https://youtu.be/OzlsWfi1zPA?t=1007
[27] 19:49: https://youtu.be/OzlsWfi1zPA?t=1189
[28] 26:07: https://youtu.be/OzlsWfi1zPA?t=1567
[29] 27:31: https://youtu.be/OzlsWfi1zPA?t=1651
[30] Посмотреть презентацию Андрея из Авито: http://bit.ly/39ni0wQ
[31] 00:00: https://youtu.be/KUnYT4CZICU?t=1
[32] 02:09: https://youtu.be/KUnYT4CZICU?t=129
[33] 05:57: https://youtu.be/KUnYT4CZICU?t=357
[34] 08:17: https://youtu.be/KUnYT4CZICU?t=497
[35] 11:23: https://youtu.be/KUnYT4CZICU?t=683
[36] 16:54: https://youtu.be/KUnYT4CZICU?t=1014
[37] 18:35: https://youtu.be/KUnYT4CZICU?t=1115
[38] 24:18: https://youtu.be/KUnYT4CZICU?t=1458
[39] 26:55: https://youtu.be/KUnYT4CZICU?t=1615
[40] 29:04: https://youtu.be/KUnYT4CZICU?t=1744
[41] 31:57: https://youtu.be/KUnYT4CZICU?t=1917
[42] 33:39: https://youtu.be/KUnYT4CZICU?t=2019
[43] 37:22: https://youtu.be/KUnYT4CZICU?t=2242
[44] 39:45: https://youtu.be/KUnYT4CZICU?t=2385
[45] Посмотреть презентацию Кирилла: http://bit.ly/39xLPLn
[46] на нашем ютуб-канале: https://www.youtube.com/playlist?list=PLknJ4Vr6efQG0LiZ-B4NgRtU38zYlOO2z
[47] в Фейсбуке: https://www.facebook.com/pg/AvitoTech/photos/?tab=album&album_id=1477045695806107
[48] ВКонтакте: https://vk.com/album-152990965_270626171
[49] Источник: https://habr.com/ru/post/490984/?utm_campaign=490984&utm_source=habrahabr&utm_medium=rss
Нажмите здесь для печати.