Flutter
Flutter — комплект средств разработки и фреймворк с открытым исходным кодом для создания мобильных приложений под Android и iOS, а также веб-приложений с использованием языка программирования Dart, разработанный и развиваемый корпорацией Google.

Первая версия выпущена в 2015 году под названием «Sky», работала только для Android-приложений. Основная заявленная особенность — высокая графическая производительность (возможность рендеринга 120 фреймов в секунду). Полная поддержка создания веб-приложений появилась в версии 2.0 (март 2021 года), также разрабатывается поддержка создания настольных приложений для Windows, macOS и Linux и Google Fuchsia (в виртуальной машине Dart с JIT-компилятором).

Из-за ограничений на динамическое выполнение кода в App Store, под iOS Flutter использует AOT-компиляцию. Широко используется такая возможность платформы Dart, как «горячая перезагрузка», когда изменение исходного кода применяется сразу в работающем приложении без необходимости его перезапуска.

Основные составляющие комплекта — платформа Dart, движок Flutter, библиотека Foundation, наборы виджетов и средства разработки (Flutter DevTools).

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

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

Дизайн пользовательского интерфейса приложений Flutter предполагает использование виджетов, описываемых как неизменяемые объекты какой-либо части пользовательского интерфейса. Все графические объекты, включая текст, формы и анимацию, создаются с помощью виджетов; комбинированием простых виджетов создаются сложные виджеты. С фреймворком поставляется два основных набора виджетов — Material Design (стиль Google) и Cupertino (стиль Apple). При этом создавать приложения Flutter можно и без виджетов, напрямую вызывая методы библиотеки Foundation для работы с канвой.
Q467707
комплект средств разработки
Concept
Q271680
фреймворк
Concept
Q1130645
открытым исходным кодом
Concept
Q620615
мобильных приложений
Concept
Q94
Android
MISC
Q48493
iOS
MEDIA
Q189210
веб-приложений
Concept
Q406009
Dart
MEDIA
Q95
Google
ORG
Q1406
Windows
Concept
Q14116
macOS
MISC
Q388
Linux
MISC
Q26267190
Google Fuchsia
MISC
Q110546
JIT-компилятор
Concept
Q368215
App Store
EVE
Q56248162
AOT-компиляцию
Concept
Q406009
Dart
MEDIA
Q2407
C++
MEDIA
Q176953
рендеринг
Concept
Q406009
Dart
MEDIA
Q47146
Дизайн пользовательского интерфейса
Concept
Q605117
виджет
Concept
Q23828
неизменяемые объекты
Concept
Q17590603
Material Design
Concept
Q312
Apple
ORG
None
канвой
UNK
Q39072787
Flutter
MISC
Q39072787
Flutter
MISC
Q39072787
Flutter
MISC
Q39072787
Flutter
MISC
Q39072787
Flutter
MISC
Q39072787
Flutter
MISC
Q39072787
Flutter
MISC
Q39072787
Flutter
MISC
Q39072787
Flutter
MISC
2015-01-01T00:00:00Z^^http://www.w3.org/2001/XMLSchema#dateTime
в 2015
DATE
2021-03-01T00:00:00Z^^http://www.w3.org/2001/XMLSchema#dateTime
март 2021
DATE
+2.0^^http://www.w3.org/2001/XMLSchema#decimal
2.0
NUMBER
instance of
instance of
programming language
developer
programming language
programming language
programming language
developer
developer
programming language
programming language