Как Flutter захватывает мир мобильной разработки

Flutter — молодая, но очень мощная технология, которая позволяет это реализовать самым эффективным путем. Об особенностях и перспективах нового набора инструментов рассказала разработчик на Flutter, основательница школы IT-профессий для девушек ITGIRLSCHOOL Алиса Цветкова. Она очень открытый человек и консультирует разработчиков по Flutter внутри сообщества Heg.ai.

Как Flutter захватывает мир мобильной разработки

В Appstore и Google Play доступно 4,4 миллиона приложений для 14 миллиардов смартфонов по всему миру. Большинство из них нативные, а значит для каждой платформы разрабатывались обособленно. Такой подход влечет большие финансовые потери, поэтому компании всё чаще стараются использовать кроссплатформенность при разработке.

Что такое Flutter

Когда у компаний появляется идея для нового приложения, то обычно приходится делить разработку на несколько частей: для каждой платформы — своя команда программистов. Либо использовать Flutter — кроссплатформенную технологию разработки мобильных приложений от Google, который позволяет использовать один код в разных операционных системах. Таким образом, его можно применить и для iOS, и для Android одновременно. Это особенно удобно для стартапов из-за скорости работы и меньших трат.

Технология сейчас на пике популярности: Ebay, Google Assistant и Alibaba уже используют Flutter для работы мобильных приложений. В 2020 году Flutter продемонстрировал резкий рост в мире разработки. По данным Statista, показатель использования вырос с 30% до 39%, больше только у React Native (еще одной кроссплатформенной технологии). Резкий скачок обусловлен высокой скоростью написания кода.

Flutter используют в том случае, когда нужно в кратчайшие сроки создать MVP — минимально жизнеспособный продукт. С помощью этого набора инструментов разработка ускоряется примерно в два раза. Для удобной и быстрой работы есть функция Hot Reload, с помощью которой можно мгновенно просматривать все изменения в коде, не теряя текущую версию.

Из-за простоты и удобства Flutter в ближайшем будущем станет самым популярным инструментом для создания мобильных приложений.

Google активно продвигает свою технологию, в то время как React Native постепенно сдает позиции. Обе технологии пока занимают очень высокие позиции на GitHub: 113 тыс. звезд (Flutter) и 93 тыс. (React Native), а в 2020 разработка Google впервые захватила лидерство.

Еще одно преимущество Flutter — это отсутствие доработок из прошлого. Большинство популярных средств разработки придуманы давно, поэтому содержат старые методы и технологии, которые надо постоянно улучшать. К примеру, Xamarin написан в 2011 году, а Flutter — в 2017, что делает его методы современнее и проще.

У молодой платформы встречаются и недостатки: если при разработке возникают проблемы, то скорее всего найти их решение в интернете не удастся. Flutter — новый инструмент, с которым еще не так много работали. Вероятно, с ростом популярности фреймворка этот недостаток исчезнет естественным образом.

Как работает Flutter

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

Особенности Flutter:

  • В отличие от многих известных на сегодняшний день мобильных платформ, Flutter не использует JavaScript ни в каком виде. В качестве языка программирования для Flutter выбрали Dart, который компилируется в бинарный код, за счет чего достигается скорость выполнения операций сравнимая с Objective-C, Swift, Java, или Kotlin.
  • Flutter не использует нативные компоненты, опять же, ни в каком виде, так что не приходится писать никаких прослоек для коммуникации с ними. Вместо этого, подобно игровым движкам он отрисовывает весь интерфейс самостоятельно. Кнопки, текст, медиа-элементы, фон — все это отрисовывается внутри графического движка в самом Flutter.
  • Для построения UI во Flutter используется декларативный подход, вдохновленный веб-фреймворком ReactJS, на основе виджетов (компонент). Для еще большего прироста в скорости работы интерфейса виджеты перерисовываются по необходимости — только когда в них что-то изменилось.

Как обучиться Flutter

Изучить Flutter с нуля — несложная задача, которая займет от силы 3-4 месяца. В основе платформы лежит язык программирования Dart — еще одна разработка Google. Синтаксис схож со знакомыми многим C#, Java и JavaScript, а значит опытному программисту будет легко обучиться Flutter.

Применить свои знания тоже можно: прямо сейчас на крупнейшей рекрутинговой платформе hh.ru доступны 125 вакансий, более половины из которых предлагают заработную плату свыше 105 тысяч рублей. Flutter активно развивается - всего полгода назад вакансий было в два раза меньше. Конечно, разработчики JavaScript быстрее найдут работу: у них есть около 1500 предложений.

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

Значит, предлагать вакансии Flutter-разработчиков стоит всем, связанным с Dart, JavaScript, Native React и т.д. Возможно кто-то из них имел небольшой опыт с Flutter и хочет окончательно сменить специализацию. Существует и другой способ поиска сотрудников — например, IT-компания The MASCC решает эту проблему аутсорсингом. Они готовы предоставить полноценную команду из 6 человек для разработки приложения на Flutter.

По состоянию на 2021 год всего 11% разработчиков — девушки. Большинство из них фронтендеры, а значит могут быть косвенно знакомы с Flutter.

Для тех, кто еще не сталкивался с такой технологией, в мае в моей школе программирования для девушек ITGIRLS я планирую запустить свой курс по мобильной разработке на Flutter. Это, например, особенно удобно для тех, кто в декрете — ушли в 2021, а в 2024 вернулись с умением работать на новой, востребованной платформе, спрос на которую за несколько лет вырастет многократно.

Алиса Цветкова
Алиса Цветкова

Успехов в программировании добиваются любознательные люди, в этой сфере нельзя один раз выучить и всю жизнь применять, поэтому в ИТ приветствуется самообучение.

Flutter — современный инструмент разработки, который точно придется по душе всем жаждущим новых знаний. Через несколько лет платформа, судя по высоким темпам роста, целиком завоюет большую часть рынка мобильной разработки. Google собрал воедино весь свой опыт и знания, чтобы создать практически безупречный Flutter, который покорит мир.

Если вы находитесь в поиске людей в свою команду для работы или учёбы, или просто хотите расширить свои социальные связи — обратите внимание на нетворк-сообщество Heg.ai: можно познакомиться с классными людьми совершенно разных профессий.

Еще больше интересных историй с участниками сообщества в нашей колонке на vc.ru. А более подробно узнать про все тонкости нетворкинга, развитие продуктов и стартапов можно в блогах в Инстаграм и Телеграм.

1919
29 комментариев

Не будем говорить про стереотипы о восприятии времени девушками, например "Выйду в 5" может означать "Выйду в 7", но информация в статье и сайте говорят сами за себя.
В статье:
Изучить Flutter с нуля — несложная задача, которая займет от силы 3-4 месяца.

Открываем сайт: Продолжительность: 10 месяцев по 10-12 часов в неделю...

17
Ответить

Там нет никакого курса по flutter, это курс по html, js, react, хотя даже 10 месяцев, это такой себе опыт для веба. А так больше прикалывают эти попытки обособиться, типо курсы для девушек, тариф "Я сама", вот кого и за что потом ещё обвиняют в сексизме?))

8
Ответить

Комментарий недоступен

14
Ответить

Просто инструменту нужны прямые руки, тогда и можно будет оценивать)

2
Ответить

Упс

Ответить

И писать на нем без боли нельзя

Ответить

Да, помню, этот Dart выносит JS еще с 2011 года и все чет никак не вынесет. Ну может лет так через 10, когда весь фронтенд будет генерироваться нейросетями, Дарт с Флаттером наконец-то всех победят и Гугл их почетно похоронит на кладбище своих проектов.

12
Ответить