Třepetání (software) - Flutter (software) - Wikipedia
Původní autoři | |
---|---|
Vývojáři | Google a komunita |
První vydání | Alfa (v0.0.6) / květen 2017[1] |
Stabilní uvolnění | 1.22.5 / 10. prosince 2020[2] |
Úložiště | |
Napsáno | C, C ++, Šipka[3] |
Plošina | Android, iOS, Google fuchsie, Webová platforma, Linux, Operační Systém Mac a Okna |
Typ | Rámec aplikace |
Licence | Nová licence BSD |
webová stránka | třepetání |
Třepetání je open-source UI sada pro vývoj softwaru vytvořil Google. Používá se k vývoji aplikací pro Android, iOS, Linux, Mac, Okna, Google fuchsie,[4] a web z jediného kódová základna.[5]
První verze Flutter byla známá pod kódovým označením "Sky" a běžela na Android operační systém. Byl odhalen v roce 2015 Šipka vývojářský summit,[6] s uvedeným záměrem být schopen poskytnout trvale na 120 snímků za sekundu.[7] Během hlavní události Google Developer Days v Šanghaji Google oznámil Flutter Release Preview 2, což je poslední velké vydání před Flutter 1.0. 4. prosince 2018 byl na akci Flutter Live vydán Flutter 1.0, který označuje první „stabilní“ verzi Framework. 11. prosince 2019 byl na akci Flutter Interactive vydán Flutter 1.12.[8]
6. května 2020 byly vydány Dart SDK ve verzi 2.8 a Flutter ve verzi 1.17.0, kde byla přidána podpora Kov API, zlepšení výkonu na zařízeních iOS (přibližně 50%), nové widgety materiálů a nové sledování sítě.
Rámcová architektura
Mezi hlavní složky Flutter patří:
- Šipka plošina
- Třepetání motoru
- Nadační knihovna
- Widgety specifické pro design
Šípková platforma
Třepetavé aplikace jsou napsány v Šipka jazyk a využívat mnoho pokročilejších funkcí jazyka.[9]
Na Okna, Operační Systém Mac, a Linux[10] Flutter běží ve virtuálním stroji Dart, který obsahuje a právě včas provedení motoru. Při psaní a ladění aplikace používá Flutter kompilaci Just In Time, která umožňuje „horké opětovné načtení“, pomocí kterého lze do spuštěné aplikace vložit úpravy zdrojových souborů. Flutter to rozšiřuje o podporu pro stavový hot reload, kde se ve většině případů změny zdrojového kódu projeví okamžitě v běžící aplikaci bez nutnosti restartu nebo jakékoli ztráty Stát.[11]
Vydané verze aplikací Flutter jsou kompilovány kompilace předem (AOT) na Androidu i iOS,[12] umožňující vysoký výkon společnosti Flutter na mobilních zařízeních.
Třepetání motoru
Flutterův motor, napsaný primárně v C ++, poskytuje nízkou úroveň vykreslování podpora pomocí Google Skia grafická knihovna. Navíc je v rozhraní s specifické pro platformu SDK jako jsou ty, které poskytuje Android a iOS.[9] Flutter Engine je přenosný běhový modul pro hostování aplikací Flutter. Implementuje základní knihovny Flutter, včetně animace a grafiky, I / O souborů a sítí, podporu přístupnosti, architekturu pluginů a sadu nástrojů runtime a kompilaci Dart. Většina vývojářů interaguje s Flutter prostřednictvím Flutter Framework, který poskytuje reaktivní rámec a sadu widgetů pro platformu, rozložení a základy.
Nadační knihovna
Knihovna nadace, napsáno v Šipka, poskytuje základní třídy a funkce, které se používají ke konstrukci aplikací pomocí Flutter, například API komunikovat s motorem.[9][13]
Widgety specifické pro design
Flutterový rámec obsahuje dvě sady widgety které odpovídají specifickým návrhovým jazykům: Materiálové provedení widgety implementují Google designový jazyk stejného jména a Cupertino widgety implementují Apple iOS Pokyny pro lidské rozhraní.[9][14][15][16]
Widgety
Flutter používá různé widgety k dodání plně funkční aplikace. Tyto widgety jsou rámcovou architekturou společnosti Flutter.[17] Flutterův katalog widgetů poskytuje úplné vysvětlení a API o rámci.
Příklad Hello World
A Ahoj světe program ve Flutter vypadá takto:
1import 'package: flutter / material.dart'; 2 3prázdnota hlavní() => runApp(HelloWorldApp()); 4 5třída HelloWorldApp rozšiřuje Bez státní příslušnosti { 6 @ přepsat 7 Widget stavět(BuildContext kontext) { 8 9 // MaterialApp funguje jako obal aplikace a 10 // poskytuje mnoho funkcí, jako je název, domov, téma atd 11 vrátit se MaterialApp(12 titul: 'Hello World App',1314 // Lešení funguje jako pojivo, které váže appBar,15 // spodní navigační lišta a další komponenty uživatelského rozhraní na jejich místech 16 Domov: Lešení(1718 // Widget AppBar () automaticky vytvoří lištu aplikace materiálu19 appBar: AppBar(20 titul: Text('Hello World App'),21 ),2223 // Widget Center zarovná dítě do středu24 tělo: Centrum(25 dítě: Text('Ahoj světe'),26 ),27 ),28 );29 }30}
Viz také
- Apache Cordova
- Appcelerator Titanium
- Seznam bohatých rámců internetových aplikací
- Víceúčelový webový aplikační rámec pro telefonování
- Nativní skript
- Reagovat nativní
- Xamarin
Reference
- ^ Chris Bracken. "Vydání v0.0.6: Rev verze alfa větve na 0,0.6, třepetání 0,0.26 (# 10010) · třepetání / třepetání". GitHub. Citováno 2018-08-08.
- ^ „Vydání Flutter SDK“. flutter.dev.
- ^ „Časté dotazy - třepetání“. Citováno 2018-08-08.
- ^ „Google„ Fuchsia “smartphone OS vypouští Linux, má divoké nové uživatelské rozhraní“. Ars Technica.
- ^ „Flutter Single Codebase pro vytvoření vaší vysněné aplikace pro iOS a Android“. Concetto Labs.
- ^ „Sky: Experiment Writing Dart for Mobile (Dart Developer Summit 2015)“.
- ^ Amadeo, Ron (1. května 2015). „Jazyk Google Dart v systému Android je zaměřen na aplikace bez Java, 120 FPS“. Ars Technica.
- ^ „Třepetání: první platforma uživatelského rozhraní určená pro výpočet prostředí“. Třepetání blog. Citováno 2019-12-11.
- ^ A b C d "Technický přehled - třepetání". flutter.dev. Citováno 2017-12-13.
- ^ „Canonical umožňuje podporu desktopových aplikací pro Linux pomocí Flutteru“. Ubuntu. Citováno 2020-07-09.
- ^ Lelel, Wm (26. února 2018). „Proč třepetá šípem“. HackerNoon. Citováno 5. prosince 2018.
- ^ stephenwzl (01.08.2018). "Flutterovy vzory kompilace". ProAndroidDev. Citováno 2018-12-06.
- ^ "nadační knihovna - Dart API". docs.flutter.dev. Citováno 2017-12-13.
- ^ „Widgety materiálového designu - třepetání“. flutter.dev. Citováno 2017-12-13.
- ^ „Widgety Cupertino (ve stylu iOS) - třepetání“. flutter.dev. Citováno 2017-12-13.
- ^ „Pokyny pro lidské rozhraní“. developer.apple.com. Citováno 2019-10-08.
- ^ „Úvod do widgetů“. flutter.dev. Citováno 2020-10-08.