Есть ли опыт работы с Flutter Web
Что проверяют
Для фронтенд-позиции это обычно проверка кругозора: понимаете ли вы, чем Flutter Web отличается от обычного веб-приложения и где его разумно применять. Следом спрашивают, взяли бы вы его вместо React для конкретной задачи.
Как отвечать
Если опыт был, опишите его по делу: что за продукт, была ли общая кодовая база с мобильным приложением, какие проблемы решали, какие цифры получили (размер загрузки, время первого экрана). Нужны свои примеры, а не общие слова. Если опыта не было, скажите прямо и покажите, что понимаете устройство технологии:
- рендеринг: Flutter Web рисует интерфейс сам, через CanvasKit (Skia, собранная в WebAssembly) или skwasm при сборке с
--wasm. HTML-рендерер признан устаревшим. Страница по сути холст, а не семантическая разметка; - первая загрузка: к приложению добавляется движок рендеринга, поэтому старт тяжелее, чем у типичного SPA, и его нужно прикрывать заглушкой;
- SEO и доступность: поисковику почти нечего индексировать, а для скринридеров Flutter строит отдельное дерево семантики, которое нужно включать и проверять;
- поведение браузера: выделение текста, поиск по странице, контекстное меню и прокрутка работают не так, как привыкли пользователи;
- связь с JS: через
dart:js_interopиpackage:web, старыйdart:htmlсчитается устаревшим. Для адресов без#вызываютusePathUrlStrategy().
Вывод, которого ждут: Flutter Web хорош для внутренних панелей, дашбордов и инструментов, когда мобильное приложение уже на Flutter и команда хочет переиспользовать код. Для контентных сайтов, лендингов и всего, что живёт за счёт поиска, он проигрывает обычному стеку.
Где спотыкаются
Выдумывают опыт. Первый же уточняющий вопрос про рендерер или размер бандла это вскрывает.
Говорят, что Flutter Web «быстрее React, потому что Canvas». Анимации могут быть плавными, но старт медленнее, а на слабых устройствах холст тоже тормозит.
Не думают про SEO и доступность, пока не придёт требование бизнеса или аудит, и тогда переделывать приходится много.