Кросс-платформенная разработка мобильных приложений: в чем плюсы для бизнеса
В мире более пяти миллиардов смартфонов. Из них около 85% работают на Android, остальные 15% — на iOS. В России, например, смартфонами на iOS пользуются чуть больше 21% людей, а на Android — 78,5%. Аудиторию терять не хочется, как и время, затрачиваемое на разработку. Многие бренды уже выбирают кросс-платформенные технологии. Среди них Alibaba, Philips Hue, Hamilton, Tencent, Grab, Groupon, «Дикси», «Яндекс.Драйв» и другие компании.
Что такое кросс-платформенные технологии
Есть три основных подхода к разработке приложений – PWA (Progressive Web Application), нативная и кросс-платформенная. PWA – технология, трансформирующая веб-сайт в мобильное приложение. Нативная мобильная разработка создаёт приложения для одной операционной системы, отдельно для iOS и Android. Кроссплатформенная — сразу для нескольких операционных систем. При этом такие приложения для пользователя ничем не отличаются – они дают нативный опыт благодаря интерфейсу визуализации с использованием собственных элементов управления. Процесс публикации приложений в сторах тоже ничем не отличается от нативных – собранные дистрибутивы подписываются и загружаются.
Существует несколько кросс-платформенных технологий – фреймворков.
Один из самых популярных сегодня – Flutter от Google. Сегодня у Flutter уже 121 тысяча звезд на GitHub – сервисе для хранения исходного кода. Google развивает Flutter, в марте 2021 года представил обновленную версию Flutter 2.
Плюсов и для разработчика, и для бизнеса у Flutter много:
- Экономия времени и бюджета. По нашему опыту, кроссплатформенные технологии помогают оптимизировать время на разработку приложений для двух платформ до 40% и, соответственно, уменьшить бюджет на разработку.
- Быстрый time-to-market.
- Не нужно дублировать штат мобильных разработчиков;
- Все Flutter-разработчики работают с единой кодовой базой, а это значит, что большее количество людей, которые понимают проект, могут провести code review (командный процесс работы над улучшением качества кода).
- Не нужно искать Android- и iOS-программистов на очень конкурентном HR-рынке;
- Не нужно синхронизировать Android- и iOS-приложения (одна из платформ может разрабатываться быстрее);
- Не нужно увеличивать расходы на менеджмент разработки;
- Легче масштабировать разработку in-house и подрядчиков – можно создать библиотеку-компонент для приложений бренда;
- Функционал Flutter никак не ограничивает в создании функционала приложения;
- Flutter работает быстрее других фреймворков — на частоте 60 кадров в секунду.
- Затраты на исправление ошибок и добавление новой функциональности ниже, чем для нативных решений;
- Для нативных разработчиков переход на flutter относительно легкий.
Кейс: мобильное приложение для ритейлера на Flutter
Была необходимость перенести существующее приложение с нативного на Flutter и значительно расширить функционал. Первая версия приложения «Дикси» вышла в сторы через три месяца после старта разработки. Приложение разрабатывала команда из десяти человек. После запуска обновлённого приложения количество пользователей выросло в 2 раза. Люди стали в 3 раза чаще возвращаться в приложение. Спустя 9 месяцев после первого релиза и улучшений приложение попало в рейтинг самых популярных приложений в русскоязычном App Store, а в мае 2021 года в топ-3 рейтинга приложений доставки еды от App Annie по числу скачиваний.
Как собрать Flutter-команду
Flutter помогает оптимизировать ресурсы и не раздувать штат. Например, для разработки нативного приложения нужны: 1 дизайнер, 3 Android-разработчика, 3 iOS-разработчика, Q&A-инженер. В случае с кросс-платформенным приложением будет достаточно трех-четырех разработчиков в команду к дизайнерам и Q&A-инженерам. Кстати, всегда полезно подключать второго Q&A-инженера на последний спринт перед релизом.
Сообщество Flutter-разработчиков большое, и оно продолжает расти. Искать разработчиков можно как на традиционных ресурсах по найму, так и в телеграм-каналах, отраслевых сообществах. Поиск Flutter-разработчика занимает, по опыту, две-три недели. Если нужно приложение с большим функционалом и большим количеством интеграций, то, конечно, лучше обращаться к команде с опытом реализации похожих проектов. Важно, чтобы разработчики уже имели опыт реализации совместных проектов.
Сколько стоят приложения на Flutter
Разработка любого мобильного приложения может оцениваться по Fix – когда изначально оговаривается бюджет и объем выполненных работ. И по Time & material – когда в процессе разработки корректируются и добавляются задачи, меняется объем работ: сколько делаем – столько тратим, но решаем и актуализируем объем в процессе. Для разработки на Flutter нет единственно верного способа оценки. Все зависит от того, насколько продукт сложный, какой функционал в нем будет реализован и какие сроки отведены на разработку.
Материал подготовлен совместно с компанией Friflex