Порхай, как бабочка, и ничего не жаль

Порхай, как бабочка, и ничего не жаль

Dmitri

В понедельник на работе я проводил презентацию на фронт-энд встрече о сравнительно новой технологии: Google Flutter. Я интересуюсь ей последний год, и недавний апдейт заинтересовал сообщество настолько, что репозиторий флаттера в GitHub взлетел на 24-е место по состоянию на октябрь 2019.

Что же такое Flutter? Почему это интересно мне и может стать интересно тебе?

Flutter — это кросс-платформенный SDK для разработки мобильных, десктопных* и веб* приложений. Он позволяет иметь одну общую основу в коде, чтобы скомпилировать приложения для разных платформ. Десктоп и веб сейчас работают только в тестовом режиме и требуют немного времени для завершения доработки, но мобильная разработка во Flutter как явление существует стабильно уже больше года.

Флаттер написан на Dart и использует реактивный подход. На практике это означает, что синтаксис очень похож на JavaScript и флоу разработки очень схоже с библиотеками React.

А, собственно, почему не использовать React Native, который присутствует на рынке с 2015 года и давно испытан? Не нужно учить новый язык, не нужно рисковать, пользуясь молодой технологией? Может показаться, что флаттер и не нужен. Может, и правда не нужен, но вот что умеет Flutter из того, чего React Native и не снится:

  • компилируется в машинный код напрямую
  • использует проприетарные виджеты для более гибкой кастомизации UI
  • отображается при 120 кадрах в секунду
  • будет поддерживать Fuchsia OS (будущий Android + Chrome OS + что у них там для IoT) с первого дня запуска

И именно на этом моменте я и вижу перевес в пользу флаттера. Да, ведроид-приложения будут поддерживаться на Фуксии, но их запуск будет возможен посредством эмулятора, что создаёт новый дырявый слой в использовании "старого" Java-приложения. Вопрос безопасности — главная причина создания Fuchsia OS, и потому бизнес будет вынужден переделывать свои приложения. А то, что они будут выглядеть приятнее глазу конечного пользователя (к тому времени смартфоны с дисплеями 120 Hz станут более распространёнными) только добавит мотивации.

Сейчас это всё по большей части теоретическое. Мы говорим о том, что существует только н̶а̶ ̶б̶у̶м̶а̶г̶е̶ в демо-версиях, и нет 100%-ной уверенности в том, что Фуксия точно выйдет. Поэтому класть все яйца в одну корзину я бы точно не советовал, и даже если разрабатывать на Flutter можно и стоит уже сегодня, я бы всё равно опасался полагаться только на него. Я могу его посоветовать к ознакомлению, изучению, и может, ты даже захочешь построить несколько пет-проектов на нём, но я ещё пока не убеждён до конца, что за флаттером непременно будущее и React Native можно откладывать в сторону.

Но если мои опасения необоснованны и нас действительно ждёт большая перестройка, то сейчас — самое время, чтобы освоить Flutter. К̶о̶г̶д̶а̶ Если придёт пора, запросов на переработку приложений будет море, и те, кто будут шарить, поднимут хороший кэш.

Я послежу ещё немного за тенденциями, и если всё будет стабильно расти, то серьёзно возьмусь за изучение. Выглядит многообещающе.

Report Page