
Ранее на этой неделе новый кроссплатформенный фреймворк для разработки мобильных приложений Google Flutter достиг стадии бета-версии. Чтобы отпраздновать это, давайте поближе рассмотрим, что Flutter делает для разработки приложений сегодня, и как он готовит как разработчиков, так и пользователей к Fuchsia.
Flutter — это кроссплатформенный фреймворк для разработки мобильных приложений с открытым исходным кодом. В настоящее время он поддерживает разработку под iOS и Android, с возможностью поддержки настольных платформ в будущем. Flutter выгодно отличается от конкурентов, таких как React Native и Xamarin, благодаря единообразию на всех платформах.
Приложение Flutter, созданное с использованием Material Design, будет выглядеть абсолютно одинаково на iOS и Android. Кроме того, Flutter работает на базе языка программирования Dart от Google, который должен быть знаком разработчикам с разным опытом.
Если вам нужно краткое описание того, что такое Flutter, посмотрите новое видео Google Developers, опубликованное компанией на прошлой неделе:
Я сам работаю с Flutter в свободное время уже более года и могу сказать, что мне это очень нравится. Для демонстрации сегодня я создал специальное демо-приложение 9to5Google примерно за полчаса. Оно всего лишь предоставляет список телефонов, которые мы обозревали, и позволяет читать обзоры. Оно очень простое и больше похоже на макет, чем на полноценное приложение (например, оно использует вручную заполненные данные), но его легко можно превратить во что-то более полезное.
- Проект Flutter в VS Code
- Пример работы приложения на Android
Все это, конечно, хорошо, но вы, вероятно, думаете: «Почему это на Fuchsia Friday?» Если да, то вы задаете правильный вопрос. Все, что вы видели в Fuchsia, работает на Flutter. Мы впервые поняли это в мае, с предварительным просмотром Armadillo, который получил распространение на Android. Сразу же это должно сказать вам несколько вещей.
Во-первых, система виджетов Flutter чрезвычайно гибкая. Помимо традиционных виджетов Material Design и включенных виджетов «Cupertino» (в стиле iOS), разработчики также могут создавать свои собственные пользовательские виджеты для удовлетворения своих потребностей. Эта возможность создавать пользовательские виджеты является основой многих элементов пользовательского интерфейса Fuchsia, таких как лента новостей (Now feed).

Лента новостей (Now Feed), работающая на Flutter – Изображение: Ars Technica
Во-вторых, очевидно, что Flutter не исчезнет и не будет заброшен в ближайшее время. Google делает большие ставки на Flutter, что видно из его присутствия на I/O 2017 и другого большого толчка на I/O 2018. Это умный шаг со стороны Google, при условии, что Fuchsia будет важен в будущем. Они делают разработчиков комфортными с Flutter за годы до того, как заставят всех переключиться.
Однако у этого плана есть и другой уровень. Как некоторые отметили, одна из самых сложных задач при создании новой операционной системы — это потенциальное отсутствие сторонних приложений. Большинство людей не купят устройство, на котором нет хороших приложений, а разработчики не будут создавать приложения для устройства, которое не продается. Однако они могут не осознавать, что, создавая приложения для Android и iOS с помощью Flutter, они создают готовые к использованию приложения для Fuchsia!
На этой неделе мне удалось запустить Fuchsia на Pixelbook (спасибо, Бен!). Помните демо-приложение из предыдущего абзаца? Простым копированием и вставкой это приложение отлично работает на Fuchsia. Вот как это выглядит.
Конечно, будут функции, специфичные для Fuchsia, которые могут улучшить опыт (см. один из примеров в нашем разборе Entities), но еще до выхода Fuchsia будет сотни совместимых приложений. С таким ориентированным на будущее подходом легко увлечься Flutter. Если вы хотите узнать больше и получить преимущество в Fuchsia, ознакомьтесь с руководством Flutter «Начало работы».
Fuchsia Friday — новая серия, в которой мы углубляемся в исходный код Fuchsia и интерпретируем, что текущее состояние ОС может означать для конечного продукта. Вся информация в этой статье является предположением, основанным на доступных данных, и может быть изменена.
Читайте больше в нашей серии Fuchsia Friday:
- Fuchsia Friday: Что такое Stories и Modules?
- Fuchsia Friday: Ledger подхватывает, где вы остановились
- Fuchsia Friday: Все является сущностью (Entity)
- Fuchsia Friday: Система, построенная на стероидах «мгновенных приложений»
- Fuchsia Friday: Объяснение структуры модульной ОС Google, похожей на Lego
Посетите 9to5Google на YouTube для получения дополнительных новостей: