Google izdaje Flutter 1.17 i Dart 2.8 SDK-ove za razvoj aplikacija

Google je objavio ažuriranja za Flutter i Dart SDK-ove, donoseći čitav niz poboljšanja za objedinjeni razvoj na više platformi. Čitajte dalje za više!

Lepršanje je a programski okvir za više platformi, s ciljem rješavanja problema razvoja višeplatformskih aplikacija bez nereda nenativnog koda. Uz poznavanje programskog jezika Dart, programer može izraditi aplikacije za Android, iOS, web i radnu površinu s objedinjenim izgledom korisničkog sučelja za sve. Lepršanje 1.9 donio podršku za macOS i Catalina u alfa stanju, dok Izdanje v1.12 sazrijelo je njihovu podršku nakon pre-alfa stanja. Sada je Google objavio novo izdanje Fluttera v1.17 i izdanje Darta v2.8, označavajući ih kao prva stabilna izdanja za Flutter i Dart u 2020. godini.

Lepršanje 1.17

Prošlog mjeseca Google je imao najavio promjene u procesu izdavanja. Ranijim procesima tvrtke nedostajalo je jasnoće o tome kada će se izdanja izgraditi, koji će kod biti u njemu, i tako dalje. Sada Google planira isporučivati ​​stabilna izdanja u otprilike tromjesečnim ciklusima. To je samo po sebi predstavljalo nekoliko izazova jer je infrastrukturu izdanja trebalo preurediti za novi proces izdanja. Sada se Flutter 1.17 objavljuje na stabilnom kanalu za programere. Google je zatvorio 6339 problema od njihovog prethodnog izdanja Flutter 1.12, a zatvorili su više bugova nego što je otvoreno ove godine, što je dovelo do neto smanjenja od ~800 problema.

Uz ispravke grešaka, Flutter 1.17 donosi značajna poboljšanja performansi, poboljšanu podršku za Metal na iOS-u i uključuje nove widgete za materijal.

Poboljšanja performansi

Aplikacije izgrađene s Flutterom 1.17 u usporedbi sa starijim izdanjima imat će ubrzanje od 20-37% za zadani slučaj navigacije u kojem postoje neprozirne rute bez transparentnosti. Postoji i značajno poboljšanje u veličinama aplikacija napravljenih s Flutterom 1.17. Na primjer, uzorak galerije Flutter sada ima 8,1 MB u 2020. naspram 9,6 MB na kraju 2019. Za korištenje memorije, izdanje 1.17 donosi 70% smanjenja memorije u brzom pomicanju kroz velike slike.

Metal je Appleov grafički API niske razine koji pruža gotovo izravan pristup osnovnom GPU-u iOS uređaja. Flutter sada koristi Metal prema zadanim postavkama pri izradi za podržane iOS uređaje, čime Flutter aplikacije rade brže. Poboljšana Metal podrška poboljšava brzine renderiranja iOS aplikacija u prosjeku za oko 50%. Na iOS uređajima koji u potpunosti ne podržavaju Metal, odnosno uređajima s verzijama iOS-a nižim od 10 i izdanim prije A7 procesora, Flutter se vraća na OpenGL.

Flutter 1.17 dodaje podršku za nove materijalne widgete. Postoje i ažuriranja postojećih widgeta. Na primjer, NavigationRail pomaže programerima da aplikacijama dodaju responzivne navigacijske modele aplikacija i izvrstan je za aplikacije koje se mogu prebacivati ​​između mobilnih i desktop faktora. DatePicker i TextSelection overflow widgeti također su ažurirani: DatePicker novi vizualni elementi odgovaraju ažuriranim materijalnim smjernicama i dodaju novi način unosa teksta, dok TextSelection sada ima poboljšanu vjernost za iOS i Android kada su gumbi duži nego što se mogu prikazati bez prelijevajući se. Na kraju, Google isporučuje i novi paket animacija koji nudi unaprijed izrađene animacije implementirajući nove Materijalno kretanje specifikacija.

Ostale promjene u Flutteru 1.17

  • Google je dovršio implementaciju Dio skale tipa specifikacije materijalnog dizajna za 2018 bez razbijanja postojećih Flutter aplikacija.
  • Google Fontovi za Flutter v1.0 također je sada dostupan. To programerima omogućuje eksperimentiranje i korištenje bilo kojeg fonta fontovi.google.com u njihovoj aplikaciji. Programer može odlučiti hoće li spojiti font s APK-om ili će korisnik dobiti font preuzimanjem iz API-ja.
  • Google je poboljšao pristupačnost Flutter aplikacija s popravcima pomicanja, tekstualnih polja i drugih widgeta za unos.
  • Google se također priprema zamijeniti trenutnu verziju Dart DevTools s novom verzijom Flutter. Programeri mogu testirati ovu novu verziju pokretanjem DevTools-a i zatim klikom na ikonu "razbijač" u gornjem desnom kutu DevTools-a. Najveće poboljšanje u novoj verziji Flutter alata Dart DevTools je nova kartica Mreža koja prikazuje mrežni promet za vašu aplikaciju Flutter kada pritisnete gumb "Snimi".
  • Još jedno poboljšanje je eksperimentalna opcija "brzog pokretanja" koja vam omogućuje pokretanje otklanjanja pogrešaka aplikacije Flutter do 70% brže kada izrađujete aplikaciju za Android.

Google također pohvaljuje tim Superformule za remaking cijelog Android aplikacija MGM Resorts u Flutteru.


Pikado 2.8

Dart je programski jezik koji se koristi za izradu aplikacija u Flutteru. Izdavanjem Dart 2.8 SDK, Google uvodi nekoliko promjena:

  • Poboljšanja na pub klijentski alat, koji se koristi za upravljanje paketima preuzetim s repozitorij paketa pub.dev.
    • Google je poboljšao performanse pub dobiti dodavanjem podrške za paralelno dohvaćanje paketa i odgodu pub run pretkompilacija.
    • Google je također dodao novi alat (pub zastario) kako bi se osiguralo da su ovisnosti o paketima ažurne.
  • Priprema za Sound null sigurnost, budući da su null reference čest izvor rušenja aplikacije do kojih dolazi kada kod pokuša pročitati varijablu koja ima null vrijednost.
    • Google se priprema dodati podršku za zvučnu null sigurnost u Dartu, što će osigurati da sve izražene varijable imaju vrijednosti koje nisu null.
    • Implementacija zvučne nulte sigurnosti velik je pothvat koji će u početku uzrokovati prekide u Dart jeziku i bibliotekama. Google želi da razvojni programeri budu svjesni toga ove prijelomne promjene i prijaviti sve probleme na njihovu praćenje problema.

Možete pročitati više o ovim i drugim promjenama u najavama za Flutter 1.17 i Dart 2.8.