Google vydal aktualizace sad Flutter a Dart SDK, které s sebou přináší celou řadu vylepšení pro sjednocený vývoj napříč platformami. Přečtěte si další informace!
Flutter je a multiplatformní programovací rámec, jejímž cílem je vyřešit strasti vývoje aplikací pro různé platformy bez změti nenativního kódu. Se znalostí programovacího jazyka Dart může vývojář vytvářet aplikace pro Android, iOS, web a desktop s jednotným vzhledem uživatelského rozhraní napříč všemi. Flutter 1.9 přinesl podporu macOS a Catalina ve stavu alfa Verze 1.12 dozrála jejich podpora za pre-alfa stav. Nyní Google přichází s novým vydáním Flutter v1.17 a Dart v2.8, které je označuje jako první stabilní vydání pro Flutter a Dart v roce 2020.
Flutter 1.17
Minulý měsíc měl Google oznámil změny v procesu vydávání. Dřívější proces společnosti postrádal jasno v tom, kdy budou verze sestaveny, jaký kód v nich bude a tak dále. Nyní Google plánuje dodávat stabilní verze zhruba ve čtvrtletním cyklu. To samo o sobě představovalo několik výzev, protože infrastruktura vydání musela být upravena pro nový proces vydání. Nyní je Flutter 1.17 uvolněn na stabilní kanál pro vývojáře. Google od svého předchozího vydání Flutter 1.12 uzavřel 6 339 problémů a uzavřel více chyb, než jich bylo letos otevřeno, což vedlo k čistému poklesu o ~800 problémů.
Kromě oprav chyb přináší Flutter 1.17 podstatná vylepšení výkonu, vylepšenou podporu pro Metal na iOS a obsahuje nové widgety Material.
Zlepšení výkonu
Aplikace vytvořené pomocí Flutter 1.17 oproti starším verzím zaznamenají 20–37% zrychlení pro výchozí případ navigace, ve kterém jsou neprůhledné trasy bez průhlednosti. Došlo také ke značnému zlepšení velikosti aplikací vytvořených s Flutter 1.17. Například vzorek Flutter Gallery má nyní 8,1 MB v roce 2020 oproti 9,6 MB na konci roku 2019. Pro využití paměti přináší verze 1.17 70% snížení paměti při rychlém procházení velkých obrázků.
Kov je nízkoúrovňové grafické rozhraní Apple, které poskytuje téměř přímý přístup k základnímu GPU zařízení iOS. Flutter nyní ve výchozím nastavení používá Metal při sestavování pro podporovaná zařízení iOS, díky čemuž aplikace Flutter běží rychleji. Vylepšená podpora Metal zlepšuje rychlost vykreslování aplikací pro iOS v průměru asi o 50 %. Na zařízeních iOS, která plně nepodporují Metal, konkrétně zařízení s verzemi iOS nižšími než 10 a vydanými před procesorem A7, se Flutter vrací k OpenGL.
Flutter 1.17 přidává podporu pro nové widgety Material. Existují také aktualizace stávajících widgetů. Například NavigationRail pomáhá vývojářům přidávat do aplikací responzivní modely navigace aplikací a je skvělý pro aplikace, které mohou přepínat mezi mobilními a stolními počítači. Byly také aktualizovány widgety DatePicker a TextSelection overflow: Nové vizuální prvky DatePicker odpovídají aktualizovaným pokynům pro materiály a přidávají nové režim zadávání textu, zatímco TextSelection má nyní vylepšenou věrnost pro iOS a Android, když jsou tlačítka delší, než je lze zobrazit bez přetékající. A konečně, Google také dodává nový balíček animací, který poskytuje předpřipravené animace implementující nové Pohyb materiálu Specifikace.
Další změny ve Flutter 1.17
- Google dokončil implementaci Část Měřítko typu specifikace Material Design pro rok 2018 bez přerušení stávajících aplikací Flutter.
- Písma Google pro Flutter v1.0 je také nyní k dispozici. To umožňuje vývojářům experimentovat a používat libovolné písmo fonts.google.com v jejich aplikaci. Vývojář se může rozhodnout, zda písmo připojí k souboru APK, nebo zda uživatel písmo obdrží stažením z rozhraní API.
- Google vylepšil dostupnost aplikací Flutter opravami posouvání, textových polí a dalších vstupních widgetů.
- Google se také připravuje na výměnu aktuální verze Dart DevTools za novou verzi Flutter. Vývojáři mohou tuto novou verzi otestovat spuštěním DevTools a kliknutím na ikonu „breaker“ v pravém horním rohu DevTools. Největším vylepšením v nové verzi Flutter Dart DevTools je nová karta Síť, která zobrazuje síťový provoz pro vaši aplikaci Flutter, když stisknete tlačítko „Nahrát“.
- Dalším vylepšením je experimentální možnost „rychlého startu“, která vám umožňuje spouštět ladění aplikace Flutter až o 70 % rychleji, když vytváříte aplikaci pro Android.
Google také vyzývá tým Superformula, aby celý předělal Aplikace MGM Resorts pro Android ve Flutteru.
Šipka 2.8
Dart je programovací jazyk používaný pro vytváření aplikací ve Flutteru. S vydáním sady Dart 2.8 SDK zavádí Google několik změn:
- Vylepšení k hospoda klientský nástroj, který se používá ke správě balíčků stažených z úložiště balíčků pub.dev.
- Google zlepšil výkon hospoda dostat přidáním podpory pro paralelní načítání balíčků a odkládání hospodský provoz předkompilace.
- Google také přidal nový nástroj (hospoda zastaralá) pro zajištění aktuálnosti závislostí balíčků.
- Příprava na bezpečnost Sound null, protože null reference jsou častým zdrojem pádů aplikace, ke kterým dochází, když se kód pokouší číst proměnnou, která má hodnotu null.
- Google se připravuje na přidání podpory pro zabezpečení nulového zvuku v Dartu, což zajistí, že všechny vyjádřené proměnné budou obsahovat nenulové hodnoty.
- Implementace nulové bezpečnosti zvuku je obrovský závazek, který zpočátku způsobí přerušení v jazyce Dart a knihovnách. Google chce, aby si toho byli vývojáři vědomi tyto zlomové změny a zapište na ně všechny problémy sledovač problémů.
Více o těchto a dalších změnách si můžete podrobně přečíst v oznamovacích příspěvcích pro Flutter 1.17 a Dart 2.8.