Разработка мобильного приложения: как выбрать между Flutter и FlutterFlow?
Если вы задумываетесь о создании мобильного приложения и уже консультировались со студиями разработки, то скорее всего вам рекомендовали сделать приложение на Flutter или FlutterFlow. Это 2 родственных интсрумента, но всё же разных. И мы попробуем обяснить разницу очень простым языком.
Что такое Flutter и FlutterFlow (FF)?
Flutter – популярный инструмент для создания приложений сразу на iOS и Android (кроссплатформенность = одно приложение работает на обеих платформах мобильных телефонов и не надо писать отдельно приложения для каждой по отдельности, как у нативной разработки).
FlutterFlow (FF) – это надстройка над Flutter, которая позволяет разрабатывать без кода через удобный визуальный редактор, проще говоря конструктор.
Почему студии предлагают Flutter и FF?
Когда речь заходит о создании нового приложения, то для заказчика важно сократить риски на старте, пока гипотеза и идея не подтвердиться. Конечно, что в первую очередь компании хотят сократить расходы на разработку, а для этого приложение надо сделать быстро, дешевле и еще иметь возможность его изменять и дорабатывать со временем.
В таких случаях нативная разработка резко проигрывает кроссплатформенным приложениям и по цене, и по скорости разработки, и по гибкости. А за счёт быстрого визуального программирования на FF проект можно еще больше оптимизировать под клиента, но есть ряд технических ограничений, с которыми нам и нужно разобраться.
Какой инструмент выбрать?
Когда подойдёт FlutterFlow?
- нужно запустить приложение быстро
- нужно дешевле протестировать идею
- функционал приложения простой с большим содержанием стандартных функций (авторизация, каталог, списки, простые интеграции и т.д.)
- простой дизайн
Когда лучше сразу писать на Flutter?
- Нужна сложная логика и кастомные функции (анимации, интерактивные карты, обработка видео и т.д.)
- Проект предполагает сложные интеграции
- Есть возможность поддержкивать проект большой команде разработчиков, где будут работать несколько разработчиков в моменте над разным фукнционалом
Пример из практики
Приложение ОММТ - бортовой журнал и соц сеть для владельцев авто
Этот проект мы сделали на FlutterFlow. Внутри приложения есть лента с видеоконтентом, когда для пользователя видео должны прогружаться еще до того, как они его открыли, чтобы не было задержке, пауз и прогрузки. Такой функционал не входит в "стандартные" возможности FF, поэтому он разрабатывался отдельно на Flutter и в конце разработки соединялся вручную с тем функционалом, который был сделан на конструкторе. Вы можете посмотреть проект по ссылке.
Вывод
FlutterFlow: если у вашего проекта высокие риски не окупиться или что придется сильно менять функциональность на основе обратной связи от пользователей. У вас ограниченный бюджет на разработку и сжатые сроки на запуск.
Flutter: в приложении много сложного и нестандартного функционала и интеграций, который нужно писать кодом. Вы планируете работать с большой командой разработчиков и вы готовы делать ваш проект основательно без больших изменений в будущем.
Если у вас до сих пор остались сомнения или вы не знаете, считается ли функционал приложения сложным и уникальным, вы можете написать в Telegram Данилу Рябову @danilkoding, который отвечает за направление мобильной разработки в нашей компании.