Приложение тут, приложение там
Что поняли в Росбанке, когда сделали свое мобильное приложение на Flutter
Расскажите для начала, в чем состоит принципиальная разница между созданием приложений для Android и для iOS?
Алексей Ясаков, глава центра развития цифровых решений Росбанка: Главное различие состояло и состоит в особенностях построения файловой системы на Android и на iOS. На iOS файловая система закрыта, и работа с ней ведется через связку «приложение — его данные». На Android файловая система открыта, и с ней можно свободно взаимодействовать. У этого есть много следствий: различные языки программирования и различный подход к работе с устройством.
С точки зрения конечного пользователя принципиальной разницы становится все меньше. Если раньше считалось, что Android для людей с более скромным достатком, а iPhone для пользователей с более высоким, то сейчас, мне кажется, это уже стереотип из прошлого, особенно с появлением более совершенных устройств и некоторым выравниванием клиентского опыта на обеих платформах.
Чем было вызвано решение о кросс-платформенности нового приложения? Почему отказались от создания двух разных приложений для двух разных систем?
АЯ: В первую очередь причины были коммерческими, но мы были также заинтересованы в быстром выводе продукта на рынок. Для разработки нативных приложений необходимо держать две независимые команды. В случае с Flutter нельзя сказать, что платформа сокращает половину расходов, но экономия все равно очень существенная. Большое количество времени также экономится на дизайне и тестировании приложения.
Развивая тему дальше, расскажите, почему выбор для создания кросс-платформенного приложения пал именно на Flutter. Это ведь не первая подобная система и не единственная.
АЯ: Flutter, конечно, не первая такая система. Есть и Xamarin, и ReatNative, Ionic и другие, а также игровые Cordova, Unity. Вопрос всегда дискуссионный, но, считаем, у них большое количество недостатков, в основном связанных с производительностью или сложностью поддержки. Чтобы приложение одинаково эффективно работало и на iOS, и на Android, в этих системах требуется приложить большее количество усилий, чем на Flutter — это все-таки проект Google. На гитхабе очень активное сообщество с более чем 110 тысячами звезд и сотнями контрибьютеров, что тоже указывает на растущую технологическую зрелость этого продукта. И, поскольку Flutter не первая подобная платформа, ее создатели исследовали недостатки предшественников и ушли от них, начиная с реализации нормального FPS и заканчивая работой «платформенного» дизайна элементов интерфейса «из коробки». В качестве альтернативы мы рассматривали React Native, но нас не устроила и производительность, и особенности поддержки, и то, что крупные игроки сами переходят в натив или на Flutter.
Приложением «РОСБАНК Бизнес» занималась та же команда, которая до этого делала одноплатформенные приложения для iOS и Android?