Flutter

Flutter
Тип Програмний каркас
Автор Google
Розробники Google та суспільство
Перший випуск Alpha (v0.0.6) / травень 2017; 7 років тому (2017-05)[2]
Стабільний випуск 1.5.4 (7 травня 2019; 4 роки тому (2019-05-07)[3])
Нестабільний випуск Release Preview 1 (червень 2018; 5 років тому (2018-06)[4])
Платформа

Розробка: Windows, MacOS та Linux;

Моб. додатки для: Android, iOS та Google Fuchsia
Мова програмування C,C++, Dart 2 та Skia Graphics Engine [5]
Ліцензія модифікована ліцензія BSDd
Онлайн-документація api.flutter.dev​(англ.)
Репозиторій github.com/flutter/flutter
Вебсайт flutter.io

Flutter — це програмний каркас із відкритим кодом для створення додатків для платформ Android та iOS, а також на вебі, розроблений компанією Google. Він є основним способом створення додатків для Google Fuchsia.[6] Весь графічний інтерфейс Google Fuchsia створено за допомогою Flutter.[7]

Історія

Перша версія «Sky» створювала мобільні додатки тільки для платформи Android. Він був представлений на конференції розробників Dart з метою надати швидкий рендеринг до 120 кадрів на секунду.[8]

Архітектура

Flutter складається з:

  • Flutter рушійпрограмний рушій для рендерингу, написаний в основному на C++ з використанням графічної бібліотеки Google Skia. Він також використовує SDK платформ Android або iOS.[9]
  • Базової бібліотеки (Foundation library) — бібліотека складається з класів та функцій (написані на Dart), які використовують для побудови Flutter програм, для взаємодії із Flutter рушієм.[9][10]
  • Віджетів. Дизайн інтерфейсу користувача у Flutter будують з віджетів. Віджет у Flutter являє собою незмінний об'єкт, який описує частину інтерфейсу користувача. Вся графіка, текст, фігури та анімації створюють за допомогою віджетів. Складні віджети створюють шляхом об'єднання простих. На поточний час Flutter містить два набори віджетів, які відповідають відповідним принципам побудови:
    • віджети Material Design використовують дизайн Google;[11]
    • віджети Cupertino імітують дизайн Apple iOS.[12]

Особливості

Архітектура Flutter відрізняється від інших програмних каркасів (React, Apache Cordova) тим, що він не використовує для побудови інтерфейсу мови HTML, CSS та Javascript, відповідно і вбудований рушій WebView. Використовується власний рушій для рендерингу.

Flutter використовує тільки одну мову програмування Dart.

Посилання

  1. https://github.com/flutter/flutter/graphs/contributors
  2. Архівована копія. Архів оригіналу за 5 лютого 2019. Процитовано 29 липня 2018.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  3. Архівована копія. Архів оригіналу за 16 лютого 2019. Процитовано 29 липня 2018.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  4. Архівована копія. Архів оригіналу за 28 липня 2018. Процитовано 29 липня 2018.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  5. Архівована копія. Архів оригіналу за 9 серпня 2018. Процитовано 29 липня 2018.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  6. Google’s "Fuchsia" smartphone OS dumps Linux, has a wild new UI. Ars Technica. Архів оригіналу за 26 вересня 2019. Процитовано 29 липня 2018.
  7. Google начала тестировать таинственную ОС Fuchsia на хромбуках Pixelbookdate=02.01.2018. ITCua. Архів оригіналу за 29 липня 2018. Процитовано 29 липня 2018.
  8. Amadeo, Ron (1 травня 2015). Google’s Dart language on Android aims for Java-free, 120 FPS apps. Ars Technica. Архів оригіналу за 6 травня 2015. Процитовано 29 липня 2018.
  9. а б Technical Overview - Flutter. flutter.io (англ.). Архів оригіналу за 13 грудня 2017. Процитовано 13 грудня 2017.
  10. foundation library - Dart API. docs.flutter.io (англ.). Архів оригіналу за 13 грудня 2017. Процитовано 13 грудня 2017.
  11. Material Design Widgets - Flutter. flutter.io (англ.). Архів оригіналу за 13 грудня 2017. Процитовано 13 грудня 2017.
  12. Cupertino (iOS-style) Widgets - Flutter. flutter.io (англ.). Архів оригіналу за 13 грудня 2017. Процитовано 13 грудня 2017.
  • п
  • о
  • р
Каркаси вебзастосунків (веб-фреймворки)
ASP.NET
ASP.NET MVC Framework · BFC · DotNetNuke · MonoRail · Umbraco
ColdFusion
ColdSpring · Fusebox · Mach-II · Model-Glue · onTap
Common Lisp
ABCL-web · blow · BKNR · SymbolicWeb · UnCommon Web
Erlang
BeepBeep · Chicago Boss · Erlang Web · ErlyWeb · Inets · Misultin · Mochiweb · Nitrogen · WebMachine · Yaws
Flex
Cairngorm
Java
Apache Cocoon · Apache Struts · Apache Tapestry · AppFuse · Aranea framework · Click Framework · Cooee framework · Flexive · Google Web Toolkit · Grails · Hamlets · IT Mill Toolkit · ItsNat · JavaServer Faces · JBoss Seam · Makumba · Mentawai · Oracle ADF · OpenLaszlo · OpenXava · Play Framework · Reasonable Server Faces · Restlet · RIFE · Shale Framework · SmartClient · Spring Framework · Stripes · ThinWire · WebObjects · WebWork · Apache Wicket · XTT Framework · ZK Framework
Клієнтські для JavaScript
ASP.NET AJAX · AJILE · Clean AJAX · Backbone.js · Dojo toolkit · Echo JS · Ext JS · jQuery · KnockoutJS · MochiKit · Meteor · MooTools · OpenLink AJAX Toolkit · Prototype · React · qooxdoo · Rialto Toolkit · Rico · script.aculo.us · SmartClient · Spry framework · WinJS · Underscore.js · Yahoo! UI Library
Perl
Catalyst[en] · Interchange · Maypole framework · Mason · Mojolicious
PHP
Akelos PHP Framework · CakePHP · Chisimba · CodeIgniter · Drupal · DokuWiki · eZ Publish · FUSE · Horde · Joomla! · Kohana · MODX · Phalcon · PHP For Applications · PHPOpenbiz · PRADO · Qcodo · Seagull PHP Framework · Simplicity PHP framework · Laravel · SilverStripe · Symfony · VirtueMart · Zend Framework · Zoop Framework · Yii
Python
CherryPy · Django · Flask · Karrigell · Nevow · Porcupine · Pylons · Spyce · TurboGears · TwistedWeb · web.py · web2py · Webware · Zope
Ruby
Camping · Nitro · IOWA · Ramaze · Cerise · Merb · Ruby on Rails
Scala
Lift · Play Framework · Scalatra
Серверні для JavaScript
AppJet · firecat · Helma Object Publisher · Node.js
Lua
Dart
Flutter
Інші
Alpha Five · Fusebox (ColdFusion і PHP) · OpenACS (Tcl) · Seaside (Smalltalk) · HAppS (Haskell)·
  • п
  • о
  • р
 
Компанія
Підрозділи
Люди
Нерухомість
Дизайн та
типографія
Події
  • Android
    • Developer Challenge
    • Developer Day
    • Developer Lab
  • Doodle4Google
  • Code-in
  • Code Jam
  • Developer Day
  • Developers Live
  • Doodle4Google
  • I/O
  • Lunar XPRIZE
  • Science Fair
  • Summer of Code
  • Talks at Google
  • YouTube
    • Awards
    • CNN/YouTube presidential debates
    • Comedy Week
    • Live
    • Music Awards
    • Space Lab
    • Symphony Orchestra
Проєкти та
ініціативи
  • A Google A Day
  • ATAP
  • Data Liberation Front
  • Data Transfer Project
  • Digital Unlocked
  • Dragonfly
  • Google for Education
  • Google for Startups
  • Google Get Your Business Online
  • Labs
  • Liquid Galaxy
  • Made with Code
  • Nightingale
  • Privacy Sandbox
  • RechargeIT
  • Shield
  • Starline
  • Sunroof
  • Zero
Критика
  • 2018 walkouts
  • Цензура
  • Критика
  • Dragonfly
  • Litigation
  • Privacy concerns
    • Street View
  • San Francisco tech bus protests
  • Worker organization
 
Розробка
Операційні системи
Бібліотеки / Фреймворки
Платформи
Інструменти
Алгоритми пошуку
  • PageRank
  • Hummingbird
  • Panda
  • Penguin
  • Pigeon
  • RankBrain
Інше
 
Розваги
  • Currents (додаток для новин)
  • Green Throttle Games
  • Owlchemy Labs
  • Oyster
  • PaperofRecord.com
  • Podcasts
  • Quick, Draw!
  • Songza
  • Stadia
    • Ігри
    • Typhoon Studios
  • TV
  • Vevo
  • Відео
  • Радар Санта-Клауса
Play
YouTube
Комунікації
Пошук
Навігація
Бізнес/Фінанси
Організація
Інші
 
Пристрої
Смартфони
Ноутбуки та планшети
Носимі пристрої
  • Віртуальна реальність
  • Fitbit
  • Pixel Buds
  • Pixel Watch
    • 2
  • Project Iris (невипущено)
Інші
 
Див. також
Курсивом позначено припинені продукти, лінії продуктів та/або сервіси · Біржове скорочення: (NASDAQ: GOOG, LSE: GGEA) · Гасло: «Вчиняй правильно» · Сайт: www.google.com