Flutter (SDK)

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Flutter
Google-flutter-logo.png
Тип SDK
Автор Google
Разработчик Google
Написана на C, C++, Dart, Skia
Первый выпуск Альфа-версия (0.0.6) - 12 мая 2017[1]
Лицензия BSD
Сайт flutter.dev

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

История[править | править код]

Первая версия Flutter носила название «Sky» и работала только под Android. Она была представлена в 2015 году на саммите разработчиков Dart с заявленной возможностью рендеринга 120 фреймов в секунду. 4 декабря 2018 года во время Flutter Live было объявлено о выпуске первой стабильной версии 1.0.

Архитектура[править | править код]

  • Платформа Dart
  • Движок Flutter
  • Библиотека Foundation
  • Наборы виджетов

Язык Dart[править | править код]

Приложения Flutter пишутся на языке Dart[2].

В Android, а также под Windows, macOS и Linux с помощью Flutter Desktop Embedding, Flutter работает в виртуальной машине Dart с JIT-компилятором. Из-за ограничений на динамическое выполнение кода в App Store, под iOS Flutter использует AOT-компиляцию[3].

Одно из главных преимуществ платформы Dart — «горячая перезагрузка», когда изменение исходного кода применяется сразу в работающем приложении без необходимости его перезапуска.

Движок Flutter[править | править код]

Движок написан преимущественно на C++, он поддерживает низкоуровневый рендеринг с помощью графической библиотеки Google Skia. А также имеет возможность взаимодействовать с платформозависимыми SDK под Android и iOS.

Библиотека Foundation[править | править код]

Эта библиотека[4], написанная на языке Dart, содержит основные классы и методы для создания приложений Flutter и взаимодействия с движком Flutter.

Виджеты[править | править код]

Дизайн пользовательского интерфейса приложений Flutter обычно включает в себя использование и/или создание различных виджетов. Виджет Flutter представляет собой неизменяемое описание какой-либо части пользовательского интерфейса. Все графические объекты, включая текст, формы и анимацию, создаются с помощью виджетов. Комбинированием простых виджетов создаются комплексные виджеты.

Однако, создавать приложения Fluter можно и без виджетов, напрямую вызывая методы библиотеки Foundation для работы с канвой.

Наборы виджетов[править | править код]

Фреймворк Flutter состоит из двух наборов виджетов, соответствующих конкретным описаниям дизайна: Material design от Google и Cupertino для имитации дизайна приложений в Apple iOS.

Примечания[править | править код]

  1. Flutter makes it easy and fast to build beautiful mobile apps.: flutter/flutter. — 2018-12-22.
  2. Введение в Dart для Java-программистов. Техноджем (9 декабря 2018). Дата обращения 22 декабря 2018.
  3. stephenwzl. Flutter’s Compilation Patterns. ProAndroidDev (1 августа 2018). Дата обращения 22 декабря 2018.
  4. foundation library - Dart API. docs.flutter.io. Дата обращения 22 декабря 2018.

Ссылки[править | править код]