Почему FlutterFlow плох для веб-разработки?

Привет! Это команда Nocodecircle. Сегодня мы обсудим FlutterFlow, популярный онлайн-конструктор для разработки нативных приложений на фреймворке Flutter от Google. Его используют те, кто хочет создавать мобильные и веб-приложения без программирования в сжатые сроки. На FlutterFlow реально собрать готовый продукт на iOS или Android за несколько недель. А вот для веб-разработки его использовать не стоит. Почему? Чтобы не собрать проблемы, о которых расскажем ниже.

Почему FlutterFlow плох для веб-разработки?

Проблемы с производительностью и большими проектами

С этими сложностями столкнутся все, кто хочет делать крупные проекты, использовать анимацию, много картинок и другой "обвес" для своих приложений.

С FlutterFlow веб-приложения получаются тяжелыми. Они загружаются медленнее, чем нативные веб-продукты, созданные на HTML, CSS и JavaScript. Почему так? Это связано с тем, что Flutter использует собственный движок для рендеринга UI, что может привести к увеличению времени загрузки и потребления ресурсов.

Таким продуктам сложно работать на больших проектах. Совершенно точно не стоит выбирать FlutterFlow для сборки веб-приложений крупных проектов - вы не получите высокой производительности и быстрого отклика. Также если на старте продукт компактный, но предполагается его развитие (будет больше пользователей, данных, функций), посмотрите лучше на другие платформы.

Создание веб-приложения на <a href="https://docs.flutterflow.io/deployment/web-publishing/" rel="nofollow noreferrer noopener" target="_blank">FlutterFlow</a>  
Создание веб-приложения на FlutterFlow  

Сложности с SEO и инклюзивностью

Продукты этой платформы не всегда дружат с SEO. Казалось бы, обычное дело для конструкторов. Но этого никак не ждешь от инструмента для нативных приложений.

Возможности SEO веб-приложений на FlutterFlow ограничены. Дело в том, что FlutterFlow и Flutter в целом не так хорошо оптимизированы для поисковых систем, как традиционные продукты, созданные с помощью “классических” языков программирования. Об этом даже говорится в официальной документации. В частности, на SEO отрицательно сказывается то, что контент, который рендерится на клиенте, может сложнее индексироваться поисковыми системами. В продуктах на FlutterFlow использование h1 и h2 тегов под вопросом, и это еще один минус.

Такие ресурсы могут испытывать проблемы с доступностью. Учитывать потребности пользователей с ограниченными возможностями необходимо по этическим соображениям. Это важный тренд, которому следуют все развивающиеся компании. А веб-продукты, собранные на FlutterFlow, могут испытывать проблемы с доступностью (когда речь идет о динамическом контенте или взаимодействии с пользователями, например). Они проигрывают в этом приложениям, созданным при помощи нативных веб-технологий. Плюс поисковый алгоритм Google сегодня учитывает инклюзивность, что напрямую влияет на SEO.

Ограниченные возможности кастомизации

С тем, чтобы заточить продукты на этой платформе под требования заказчиков тоже могут возникать трудности.

На FlutterFlow сложно создать гибкий веб-ресурс. Его возможности будут ограничены функционалом конструктора, начиная с дизайна и заканчивая невозможностью написания некоторых плагинов, интеграций со сторонними платформами, уникальных пользовательских интерфейсов. Настройки веб-приложения на FlutterFlow могут быть недостаточно гибкими в сравнении с традиционными инструментами веб-разработки.

Интеграция с <a href="https://www.technbrains.com/blog/flutterflow-web-app-development-guide/" rel="nofollow noreferrer noopener" target="_blank">Firebase</a>
Интеграция с Firebase

Лимиты на совместимость и интеграции

Иногда пользователи жалуются и на проблемы такого рода.

Интеграция с другими технологиями ограничена. Современная веб-разработка не обходится без интеграции с различными сторонними сервисами и технологиями. Чем больше конструктор может подключать платформ, тем лучше. 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 хорошо подойдет для лендингов, сайтов-визиток, ресурсов мероприятий, компактных интернет-магазинов с небольшим выбором товаров. Если не рассчитывать на большой проект и дальнейшее развитие малого - серьезных проблем не будет.

Еще больше интересных тем и новостей - на нашем канале. Приходите ;)

44
2 комментария

Отличная статья, спасибо! Как раз нужно разработать сайт-визитку,надеюсь, FlutterFlow с этим справится👌

1
Ответить

С этим - вполне себе справится :)

1
Ответить