Почему FlutterFlow плох для веб-разработки?
Привет! Это команда Nocodecircle. Сегодня мы обсудим FlutterFlow, популярный онлайн-конструктор для разработки нативных приложений на фреймворке Flutter от Google. Его используют те, кто хочет создавать мобильные и веб-приложения без программирования в сжатые сроки. На FlutterFlow реально собрать готовый продукт на iOS или Android за несколько недель. А вот для веб-разработки его использовать не стоит. Почему? Чтобы не собрать проблемы, о которых расскажем ниже.
Проблемы с производительностью и большими проектами
С этими сложностями столкнутся все, кто хочет делать крупные проекты, использовать анимацию, много картинок и другой "обвес" для своих приложений.
С FlutterFlow веб-приложения получаются тяжелыми. Они загружаются медленнее, чем нативные веб-продукты, созданные на HTML, CSS и JavaScript. Почему так? Это связано с тем, что Flutter использует собственный движок для рендеринга UI, что может привести к увеличению времени загрузки и потребления ресурсов.
Таким продуктам сложно работать на больших проектах. Совершенно точно не стоит выбирать FlutterFlow для сборки веб-приложений крупных проектов - вы не получите высокой производительности и быстрого отклика. Также если на старте продукт компактный, но предполагается его развитие (будет больше пользователей, данных, функций), посмотрите лучше на другие платформы.
Сложности с SEO и инклюзивностью
Продукты этой платформы не всегда дружат с SEO. Казалось бы, обычное дело для конструкторов. Но этого никак не ждешь от инструмента для нативных приложений.
Возможности SEO веб-приложений на FlutterFlow ограничены. Дело в том, что FlutterFlow и Flutter в целом не так хорошо оптимизированы для поисковых систем, как традиционные продукты, созданные с помощью “классических” языков программирования. Об этом даже говорится в официальной документации. В частности, на SEO отрицательно сказывается то, что контент, который рендерится на клиенте, может сложнее индексироваться поисковыми системами. В продуктах на FlutterFlow использование h1 и h2 тегов под вопросом, и это еще один минус.
Такие ресурсы могут испытывать проблемы с доступностью. Учитывать потребности пользователей с ограниченными возможностями необходимо по этическим соображениям. Это важный тренд, которому следуют все развивающиеся компании. А веб-продукты, собранные на FlutterFlow, могут испытывать проблемы с доступностью (когда речь идет о динамическом контенте или взаимодействии с пользователями, например). Они проигрывают в этом приложениям, созданным при помощи нативных веб-технологий. Плюс поисковый алгоритм Google сегодня учитывает инклюзивность, что напрямую влияет на SEO.
Ограниченные возможности кастомизации
С тем, чтобы заточить продукты на этой платформе под требования заказчиков тоже могут возникать трудности.
На FlutterFlow сложно создать гибкий веб-ресурс. Его возможности будут ограничены функционалом конструктора, начиная с дизайна и заканчивая невозможностью написания некоторых плагинов, интеграций со сторонними платформами, уникальных пользовательских интерфейсов. Настройки веб-приложения на FlutterFlow могут быть недостаточно гибкими в сравнении с традиционными инструментами веб-разработки.
Лимиты на совместимость и интеграции
Иногда пользователи жалуются и на проблемы такого рода.
Интеграция с другими технологиями ограничена. Современная веб-разработка не обходится без интеграции с различными сторонними сервисами и технологиями. Чем больше конструктор может подключать платформ, тем лучше. FlutterFlow напрямую работает с Firebase, Supabase, Stripe, Google Sheets, Angolia, Gemini и некоторыми другими сервисами. Однако, этот lowcode-конструктор не поддерживает следующие инструменты:
- SQL-базы данных (например, MySQL, PostgreSQL, SQL Server). Поддержка SQLite есть, но она ограничена только мобильными приложениями и недоступна для веб-приложений;
- Офисные приложения, такие как Microsoft Office 365 или Google Workspace;
- Аналитические инструменты, как Mixpanel или Amplitude, позволяющие изучать пользовательское поведение;
- Некоторые популярные маркетинговые инструменты, такие как Mailchimp или HubSpot, применяемые для автоматизации;
- Специальные инструменты для e-commerce, такие как Shopify или Magento, что ограничивает возможности для создания полноценных интернет-магазинов.
Ограниченная совместимость с браузерами. Хотя FlutterFlow поддерживает веб, продукты на нем не всегда совместимы с разными версиями браузеров, особенно с учетом специфических особенностей рендеринга каждого из них. Перед тем, как выбрать этот инструмент для web-проекта, нужно определиться, работать ли со старыми платформами. В официальной документации указаны минимальные версии Chrome, Firefox, Safari, Edge и т.д., с которыми Flutter не имеет проблем.
Выводы
Все перечисленное выше может осложнить жизнь тем, кто хочет создать веб-приложение на FlutterFlow. Особенно если речь идет о проектах, требующих высокой производительности, гибкости и SEO-оптимизации. Так, если задача сайта - продвигать какие-то услуги или продукты, взаимодействовать с пользователями разными способами, развлекать и предоставлять информацию в разных форматах, точно не стоит выбирать обсуждаемый инструмент.
FlutterFlow хорошо подойдет для лендингов, сайтов-визиток, ресурсов мероприятий, компактных интернет-магазинов с небольшим выбором товаров. Если не рассчитывать на большой проект и дальнейшее развитие малого - серьезных проблем не будет.
Еще больше интересных тем и новостей - на нашем канале. Приходите ;)