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

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

В 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. А более подробно узнать про все тонкости нетворкинга, развитие продуктов и стартапов можно в блогах в Инстаграм и Телеграм.

{ "author_name": "Сообщество Hegai", "author_type": "self", "tags": [], "comments": 27, "likes": 9, "favorites": 67, "is_advertisement": false, "subsite_label": "dev", "id": 212830, "is_wide": true, "is_ugc": true, "date": "Sat, 13 Mar 2021 12:31:41 +0300", "is_special": false }
0
27 комментариев
Популярные
По порядку
Написать комментарий...
14

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

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

Ответить
8

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

Ответить
5

Ну и аудитория "девушки в декрете". Далеко не все смогут выделить по 3 часа в день на протяжении 10 месяцев. А если перевести на 3-4 месяца, то выйдет как обычный рабочий день. А по поводу сексизма да. Мужские клубы - сексизм, женские клубы - вроде Women Who Code - тренд который поддерживают, чтоб хайпануть и вливают огромные деньги. Хотя такое же ограничение по половому признаку, как и сексизм.

Ответить
13

Флаттер-хуятер.
Медузе привет! Невозможно пользоваться приложением без боли.

Ответить
2

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

Ответить
2

Не спорю, но в итоге получается дороже нейтива

Ответить
0

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

Ответить
0

Я уже сказал про прямые руки)

Ответить

Английский Денис

Александр
0

Упс

Ответить
0

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

Ответить
12

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

Ответить
2

Пока Dart побеждал JavaScript успел появится TypeScript и занять свою нишу. А Dart все продолжал побеждать.

Ответить
1

Что интересно, angular тоже от гугла, но он на typescript.. Есть, конечно, angular dart, но его, похоже, скоро похоронят (может, flutter web на замену...)

Ответить
1

В ближайшем будущем появится фуксия. Разработка под неё будет dart/flutter. Андроиду уже реально пора на отдых. Столько сложностей и костылей

Ответить
0

Зная гугл, они и в фуксии не меньше нагородят :)
Ну и я бы лично тогда бы в iOS разработку уходил, свифт хоть на котлин больше похож, а дарт — на помесь джавы непонятно с чем, имхо. В тонкости платформы один хрен по-новой втыкать, так тут хоть куча чужого опыта наступания на грабли, библиотек, и синтаксис приятный.

Ответить
3

Нет никакого смысла убеждать кого-то в преимуществах Flutter. Зачем конкурентов плодить :)

Ответить
0

Толковые ребята всегда будут в цене. Бояться конкуренции не нужно, потому что на условном уровне топ 5% её просто нет.

Ответить
1

Да я тех комментаторах, кто постоянно пишет технология "г..., Нафига это надо и т.п.", зачем на них энергию тратить и убеждать в обратном?

Ответить
2

Ох уж эти ай-ти девчонки. 10 месяцев обсасывать флаттер, (простите, ничего пошлого не имел в виду) чтобы на практике понять, что программирование - это не формочки на экране мобилки из волшебных виджетов рисовать. Когда надо поддерживать нативный look-and-feel обеих платформ в одной кодовой базе - вот тогда начинается кровавая баня и глаза полные ужаса. Вообще никому не рекомендую из веба (и уж тем более после курсов) на флаттер кодеров брать. Только из нейтив разработки от 1 года в бою. Эти хоть как-то понимают что на системном уровне происходит.

Ответить
1

А частый ли это клейс - поддерживать строгий натив для обоих платформ?

Ответить
1

Строгий натив понятие относительное, можно долго обсуждать чем оно является. Однако с позиции разработки и затрат на нее, появление такого требования, как платформенный Look&feel (жесты, навигация, отзывчивость, уведомления и тд) - это сложно и очень дорого на кроссплатформе. Пока что самые успешные кейсы флаттера - энтерпрайз, который с тем же успехом мог бы и нативные решения использовать, но готов экспериментировать с технологиями в расчете на будущую экономию на поддержке. В остальном - любая кроссплатформа - это стадия MVP. А дальше либо в могилку либо на натив.

Ответить
0

Те получается, что флаттер это мера до поры до времени пока продукт не окрепнет, а дальше на Свифт и на чем там Андройды пишут?

Ответить
0

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

Ответить
1

Такой подход влечет большие финансовые потери, поэтому компании всё чаще стараются использовать кроссплатформенность при разработке

К словам «всё чаще» очень хочется пруфлинк. Если кроссплатформенность очевидно выгоднее, что ж все ещё десять лет назад к ней не ушли, а только сейчас зашевелились?

Ответить
0

Она выгодна не всем подряд, а некоторым. И всякие phonegap, unity и тп вполне себе существовали 10 лет назад.

Ответить
0

всякие phonegap, unity и тп вполне себе существовали 10 лет назад.

Я в курсе, мой вопрос в этом и состоит: поскольку кроссплатформа вполне себе существовала 10 лет назад, на чём основаны слова о том, что сейчас её используют «всё чаще».

Ответить

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

Комментарии

null