🈲 Мультиплатформа без большого рефакторинга и остановки продуктовой разработки
Привет, это Сергей Ефанов, старший мобильный разработчик в Яндексе. Недавно я выступал на Mobile Runtime, где рассказал, как мы внедряли Compose Multiplatform в Я.Team — внутренний сервис для сотрудников компании.
Над приложением работает всего три человека: два Android-разработчика и один iOS-разработчик. В какой-то момент мы поняли, что постоянно реализуем одни и те же фичи дважды. Из-за этого логика постепенно расходилась между платформами, баги исправлялись не одновременно, аналитика отличалась, а ресурсы и переводы дублировались.
⏭ Мы решили перейти на Compose Multiplatform. Главной задачей было сделать это без остановки продуктовой разработки и без большого рефакторинга.
Для этого мы начали постепенно выносить в общую часть только то, что действительно дублировалось. Каждый шаг планировали так, чтобы его можно было протестировать, зарелизить и при необходимости быстро откатить.
Переход оказался инженерной инвестицией. Пока мы строили инфраструктуру, разработка действительно замедлилась, а всей команде пришлось осваивать новые инструменты и соседний стек. Но теперь мы можем разрабатывать значительную часть новых фич, затрачивая вдвое меньше ресурсов.
👷♀️ В карточках я показал несколько схем нашей архитектуры и процесса передачи общего кода.
🔽 Если интересно узнать больше — внизу прикрепил презентацию доклада. Также его можно посмотреть на ютубе или в VK Видео.
На данный момент мы с командой уже реализовали 12 shared-фич. А 70% кода — общие для двух платформ.
📺 Другие доклады с Mobile Runtime тоже уже можно смотреть:
🟰 Трек AI — ютуб и VK Видео
🟰 Трек Not so AI — ютуб и VK Видео
Подписывайтесь:
💬 @Yandex4Mobile
📹 @YandexforMobile
Post #580
2.53K









- 🔥 12
- ❤ 4
- 👏 1