26.06.2024
994
C каждым годом Flutter набирает популярность, обгоняя React Native. Разработчики развивают сообщество, непрерывно улучшая Flutter, а бизнес все чаще делает на нем приложения, чтобы выходить в мобайл и развивать онлайн-продажи.
Разобрались, что такое Flutter и чем он отличается от других фреймворков, какие у него преимущества и особенности. Почитайте, чтобы решить, нужно ли вам делать приложение на Flutter или лучше выбрать другие инструменты.
Если нет времени читать статью целиком, переходите к разделу «Коротко» — собрали там главное по теме.
Flutter — это фреймворк для разработки кроссплатформенных приложений от Google. Flutter позволяет разработчикам использовать единый кодовый базис для создания приложений для Android, iOS, веба и настольных операционных систем, а также для российской мобильной ОС Аврора.
Основное отличие Flutter от других подобных технологий — язык программирования Dart и собственный рендеринговый движок Skia.
Язык программирования Dart. Сотрудники Google хотели уйти от несовершенств JavaScript и в итоге придумали Dart, который позволяет делать решения для разных устройств и платформ. Разработчики любят Dart за простой и понятный синтаксис, свой набор библиотек и мощные инструменты для разработки пользовательского интерфейса.
Рендеринговый движок Skia. В отличие от других кроссплатформенных фреймворков, например, React Native и Xamarin, пользовательские интерфейсы на Flutter не зависят от платформы. Все потому, что движок рендеринга Skia не требует каких-либо компонентов пользовательского интерфейса, специфичных для платформы, — и это только повышает производительность приложений.
Skia изначально был взят из Chrome, и сейчас команда Flutter разрабатывает Impeller — полностью собственный движок. Impeller используется для iOS по умолчанию уже сейчас, а для Android пока тестируется.
Flutter популярен за его способность быстро создавать визуально привлекательные приложения, которые показывают высокую производительность.
Среди популярных приложений на Flutter — мобильные приложения Яндекс Про и Google Ads, приложение газеты The New York Times и приложение для поиска недвижимости Realtor.com, а также приложение для покупок Xianyu от Alibaba. Выбор этого фреймворка позволил Alibaba ускорить время разработки, обеспечить высокую производительность приложения на разных платформах и сократить расходы на поддержку разных кодовых баз.
Вот основные этапы развития фреймворка от Google, благодаря которым Flutter набирает популярность по всему миру.
Проект начался под названием Sky и был представлен на саммите Dart Developer в 2015 году. Это были первые шаги Flutter как экспериментальной платформы для разработки высокопроизводительных приложений для Android и iOS.
На конференции Google I/O 2017 была представлена первая бета-версия Flutter. Бета-версия позволила сообществу разработчиков оценить возможности и преимущества Flutter, что способствовало дальнейшему росту интереса к платформе.
Появление первой официальной стабильной версии Flutter 1.0 стало стартом использования Flutter для создания приложений. После официального релиза платформа получила признание за быстродействие, гибкость и удобство разработки.
Flutter обновился до Flutter 2.0 и начал стабильно поддерживать веб-приложения. С этого момента Flutter стал универсальной платформой для разработки приложений для Android, iOS и веба.
Flutter 3 — первая стабильная версия с поддержкой настольных платформ Windows, MacOS и Linux. Этот релиз подчеркнул постоянные улучшения в производительности и возможностях Flutter, а также поддержку новейших технологий и стандартов.
Уверен, что Flutter и дальше будет улучшать производительность, представлять интеграции с новыми платформами и устройствами, а также более тесно сотрудничать с экосистемой Google, другими популярными сервисами и искусственным интеллектом. Например, на Google I/O 2024 презентовали Gemini API — SDK для работы Flutter с новой нейросетью Google. Это откроет новые сценарии использования приложений на Flutter.
Рустам Мухамедьянов, руководитель WINFOX
Главные плюсы Flutter — скорость разработки, экономия, современный интерфейс, высокая производительность, универсальность, обширное сообщество.
Flutter обладает мощной функцией горячей перезагрузки (Hot Reload), что позволяет разработчикам мгновенно видеть результаты изменений в коде без необходимости перезапуска приложения. Это значительно ускоряет процесс разработки: приложение на Flutter можно сделать за четыре-пять месяцев.
Flutter позволяет использовать единую кодовую базу для всех платформ, поэтому компания экономит на найме разработчиков для каждой платформы. А еще бизнес сокращает затраты на поддержку — компании больше не нужно дорабатывать и обновлять несколько приложений.
Flutter предлагает встроенный набор виджетов, с которыми можно создавать минималистичные и интуитивно понятные интерфейсы. При этом можно использовать свои шрифты и визуальные решения, чтобы адаптировать приложение под свой брендбук.
Flutter использует собственный движок для рендеринга. Это сокращает потребность в мостах и промежуточных вызовах, которая есть у других кроссплатформенных фреймворков. За счет этого приложения на Flutter не уступают в производительности нативным приложениям, которые созданы на Java и Swift.
Flutter подходит для разработки как мобильных, так десктопных и веб-приложений. А еще фреймворк предоставляет мощные инструменты для создания кастомизированных пользовательских интерфейсов, которые можно адаптировать под требования бизнеса и пользователей.
Как большинство продуктов от Google, Flutter обладает активным и растущим сообществом разработчиков. Это означает множество готовых компонентов, библиотек и плагинов, которые специалисты выгружают в открытый доступ. Все эти ресурсы можно использовать для расширения функциональности интерфейса своего приложения.
Google также заботится о Flutter, оперативно исправляя серьезные ошибки и проблемы с кодом.
Выбирайте Flutter, если у вас нет времени на разработку и вы хотите получить один код для всех платформ.
Рустам Мухамедьянов, руководитель WINFOX
Flutter не всегда подходит для сложных приложений, а сам файл приложения весит больше, чем обычно.
Одна из фишек Flutter — плавная анимация со множеством визуальных эффектов. Когда приложение сложное, таких анимаций нужно много. Это может снизить производительность приложения, сделав его более медленным и неудобным для пользователей.
«Сложности могут быть, если приложению нужно работать с большим количеством каких-то системных вещей, которые могут по-разному работать от платформы к платформе (или вообще отсутствовать на какой-то из них) и которые надо отдельно прорабатывать. Это может потребовать от разработчиков много дополнительного времени, и на выходе экономия будет значительно меньше. В таких случаях и правда стоит смотреть в сторону нативной разработки».
Иван, Flutter-разработчик WINFOX
Приложение на Flutter обычно весит больше, чем нативное. При сборке установочного пакета на Flutter добавляются не только файлы Flutter, но и виртуальная машина Dart, которая рисует интерфейс приложения со всеми анимациями, переходами между экранами, диалогами, фрагментами и так далее.
«Версия, которая попадает к пользователям, включает в себя не только нативный код, но и движок Flutter. Именно он и увеличивает размер. Понятно, что эта разнице тем менее заметна, чем больше приложение само по себе. Да и к тому же больший размер приложения — особенность любых кроссплатформенных решений».
Иван, Flutter-разработчик WINFOX
Сфера применения Flutter очень обширна. Например, на его основе мы сделали приложения для торговли криптовалютами, бронирования экскурсий и расчета процентов по займам в сети ломбардов. Рассказываем подробнее.
— Специфика экскурсий в туристических городах Турции
— Интеграция отелей для индивидуального трансфера человека, который записался на экскурсию
— Оплата экскурсий для туристов из России
Срок разработки: 3 месяца
— Сложный алгоритм расчета процентов по займам, оплаты процентов, уменьшения суммы займов, полного погашения залоговых билетов
— Увеличение суммы займа дистанционно с получением на карту
Срок разработки: 6 месяцев
— Продажа и обмен криптовалют на бирже
— Покупка криптовалюты за фиаты
— Безналичный расчет
— Сложные алгоритмы расчетов и торговли
— Интеграция с Binance
Срок разработки: 8 месяцев
— Личный кабинет для загрузки документов, оплат, отслеживания процессов
— Мобильная система лояльности
— Интеграция с кастомным чатом заказчика
Срок разработки: 3,5 месяца
— Отчеты о параметрах работы экскаваторов, самосвалов, погрузчиков, бульдозеров и другой техники
— Локализации для работников из разных стран
— Экспорт данных в Excel
Срок разработки: 2,5 месяц
Важно. Многие наши кейсы под NDA, поэтому мы не можем рассказывать о них на сайте и других площадках. Чтобы узнать больше о каком-либо приложении на Flutter, которое мы делали, напишите нам.
А еще мы использовали Flutter, чтобы сделать мобильную лоукод платформу для бизнеса. С ней можно создавать приложения из готовых компонентов и с минимальным написанием кода.
С Martenn разработка доступна для людей без глубоких технических знаний, поэтому бизнес-аналитики, менеджеры проектов и другие специалисты активно участвуют в процессе создания приложения.
У нас опытная команда разработчиков приложений на Flutter. Работаем с фреймворком с 2022 года.
Разработкой на Flutter у нас занимаются четыре специалиста. Они непрерывно повышают квалификацию, проходят обучение и участвуют в тематических конференциях.
Рустам Мухамедьянов, руководитель WINFOX
Если вы решили сделать приложение на Flutter, расскажите нам — и мы вместе придумаем, как это реализовать.
— Flutter — это фреймворк для разработки кроссплатформенных приложений от Google.
— Flutter позволяет разработчикам использовать единый кодовый базис для создания приложений для Android, iOS, веба и настольных операционных систем.
— Главное отличие Flutter от других фреймворков — рендеринговый движок Skia и переход на полностью собственный движок Impeller.
Flutter был представлен общественности в 2017 году и с тех пор активно развивается.
— Главные плюсы Flutter — скорость разработки, экономия, современный интерфейс, высокая производительность, универсальность, обширное сообщество разработчиков.
— Особенности Flutter в том, что он не всегда подходит для создания сложных приложений, а сам файл приложения весит больше, чем при нативной разработке.
— У WINFOX опытная команда разработчиков приложений на Flutter, с которым мы работаем с 2022 года.
— На Flutter мы сделали приложения для торговли криптовалютами, бронирования экскурсий, расчета процентов по займам, клиентов юридической фирмы, прикладных инженеров международной компании.
Подпишись на рассылку
27.07.2017
6555
Такая возможность поддерживается только в версии Ultimate. Это руководство рассказывает о том, как
26.09.2022
1686
Мы решили перестроить процесс, чтобы все работало как часы, и делимся опытом