Flutter 1.12 продолжает продвижение Google к «вездесущим вычислениям» с поддержкой macOS

Сегодня в Нью-Йорке проходит мероприятие Flutter Interact, где Google представляет последние достижения в разработке приложений с помощью Flutter. В этом году Flutter фокусируется на расширении общекорпоративного стремления Google к «вездесущим вычислениям» путем поддержки большего количества платформ, таких как macOS.

Flutter и вездесущие вычисления

На мероприятии Made by Google в октябре, где был официально представлен Pixel 4, сотрудники Google продемонстрировали, как каждое анонсированное устройство продвигает их амбиции в области «вездесущих вычислений». В видении Google «вездесущих вычислений» люди больше не должны думать о том, какое из множества их устройств подходит для конкретной задачи, а могут выполнять любую задачу с любого доступного гаджета.

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

Реклама — прокрутите дальше, чтобы увидеть больше контента

С помощью Flutter SDK Google наконец изменила это, позволив разработчикам использовать единую общую кодовую базу для создания быстрых, единообразных, нативных приложений для Android, iOS, умных дисплеев, Fuchsia и Web.

Flutter 1.12 |

Flutter для macOS alpha

Следующим рубежом для Flutter являются настольные компьютеры, и macOS является первой целевой платформой, которую Google имеет в виду. Разработчики уже давно могут использовать свои Mac для создания приложений для Android и iOS с помощью Flutter, а начиная с сегодняшнего выпуска Flutter 1.12, теперь возможно создавать приложения непосредственно для macOS.

Чтобы подготовиться к таким настольным платформам, как macOS, команда Flutter усердно работала над тем, чтобы сделать свой встроенный набор виджетов пользовательского интерфейса удобным для настольных компьютеров, добавив такие функции, как поддержка навигации с помощью клавиатуры. Flutter 1.12 также включает возможность изменять «визуальную плотность» вашего приложения, как это определено в рекомендациях Material Design, для лучшего соответствия различиям в размерах экрана между мобильными и настольными устройствами.

На данный момент поддержка приложений macOS в Flutter все еще считается альфа-версией и требует, чтобы разработчики использовали версию Flutter SDK либо dev, либо master.

Flutter для Web Beta

В прошлом году на Flutter Live команда продемонстрировала технический предварительный просмотр создания приложений Flutter для веб-сайтов под кодовым названием Hummingbird. С тех пор непрерывно велась работа по обеспечению максимальной стабильности Flutter для Web. В рамках Flutter 1.12 Flutter для Web официально перешел в бета-версию.

Хотя это по-прежнему звучит так, как будто технология находится на ранней стадии, помните, что Google назвал Flutter «готовым к производству» после выпуска третьей бета-версии. Чтобы понять, насколько хорошо работает Flutter для Web сегодня, взгляните на недавно обновленное веб-приложение DartPad, которое позволяет разрабатывать и тестировать приложения Flutter для Web прямо в вашем браузере.

Режим «Темная тема» в iOS 13

Для тех, кто предпочитает использовать стабильные сборки, самым большим улучшением в Flutter 1.12 является полная поддержка темной темы в iOS 13. Ранее в этом году Flutter получил полноценную поддержку автоматического переключения в темный режим на Android 10, что потребовало минимальных усилий со стороны разработчика, если они использовали стандартные виджеты Material Design Flutter.

С момента сегодняшнего выпуска все виджеты, похожие на iOS, называемые «Cupertino», теперь также доступны в темной теме, которую можно автоматически включать в зависимости от настроек темной темы устройства.

Добавление в приложение

Другой важной функцией Flutter 1.12 является официальная, стабильная поддержка добавления Flutter в любое существующее приложение для iOS или Android. Это особенно полезно для поэтапной миграции вашего приложения на Flutter, а не для создания с нуля. Разработчики Android могут даже воспользоваться недавно добавленной опцией «Flutter Module» в представлении New Module в Android Studio, чтобы быстро добавить Flutter в свой проект Android.

Dart 2.7

Язык программирования Dart является основой Flutter и также получает обновление сегодня до версии 2.7. Выпуск включает стабильную поддержку «методов расширения» — впервые представленных в Dart 2.6 — которые позволяют разработчикам создавать удобные новые функции и добавлять их к любому существующему классу.

https://gist.github.com/RedBrogdon/ce732b859c758e04ee74e4e40b517ced

Dart 2.7 также включает ранний предварительный просмотр новых функций языка «безопасность null», которые помогают разработчикам выявлять потенциальные ошибки, связанные с неожиданным значением null для переменной. Помечая в коде, какие переменные *могут* быть null, инструменты Dart могут гарантировать, что ваш код готов к тем случаям, когда они *являются* null. Чтобы опробовать эти функции безопасности null без внесения значительных изменений в ваш собственный код, Google запустил специальную версию DartPad с включенной безопасностью null.


Разработчики могут скачать Flutter 1.12 с официального сайта прямо сейчас или обновить, выполнив команду flutter upgrade. Dart 2.7 встроен в сегодняшний выпуск Flutter 1.12 и также доступен для отдельной загрузки. Или, если вы еще не пробовали создавать приложения Flutter или Dart, это никогда не было проще, благодаря недавнему добавлению поддержки Flutter в онлайн-песочнице для разработчиков Google DartPad.