Google esitteli Flutter 2 -kehyksen ja Dart 2.12 -kielen

Google esitteli Flutter 2 -käyttöliittymäkehyksen, joka merkitsi hankkeen muuttumista mobiilisovellusten kehittämisen kehyksestä universaaliksi kehykseksi minkä tahansa tyyppisten ohjelmien luomiseen, mukaan lukien työpöytäohjelmat ja verkkosovellukset.

Flutter nähdään vaihtoehtona React Nativelle, ja sen avulla voit tuottaa sovelluksia eri alustoille yhden koodipohjan perusteella, mukaan lukien iOS, Android, Windows, macOS ja Linux, sekä selaimissa toimivia sovelluksia. Flutter 1:ssä aiemmin kirjoitetut mobiilisovellukset voidaan mukauttaa toimimaan työpöydällä ja verkossa Flutter 2:een vaihtamisen jälkeen ilman koodin uudelleenkirjoittamista.

Suurin osa Flutter-koodista on toteutettu Dart-kielellä ja ajonaikainen moottori sovellusten suorittamiseen on kirjoitettu C++-kielellä. Sovelluksia kehitettäessä voit Flutterin alkuperäisen Dart-kielen lisäksi käyttää Dart Foreign Function -käyttöliittymää kutsumaan C/C++-koodia. Korkea suoritusteho saavutetaan kääntämällä sovelluksia alkuperäiseen koodiin kohdealustoille. Tässä tapauksessa ohjelmaa ei tarvitse kääntää uudelleen jokaisen muutoksen jälkeen - Dart tarjoaa kuuman uudelleenlataustilan, jonka avulla voit tehdä muutoksia käynnissä olevaan sovellukseen ja arvioida tuloksen välittömästi.

Flutter 2 tarjoaa täyden tuen tuotantokäyttöön soveltuvien verkkosovellusten luomiseen. Kolme pääskenaariota Flutter for the Webin käyttämiselle mainitaan: itsenäisten verkkosovellusten kehittäminen (PWA, Progressive Web Apps), yksisivuisten verkkosovellusten luominen (SPA, Single page apps) ja mobiilisovellusten muuntaminen verkkosovelluksiksi. Web-kehitystyökalujen ominaisuuksiin kuuluvat 2D- ja 3D-grafiikan nopeuttamiseen tarkoitettujen mekanismien käyttö, elementtien joustava järjestely näytöllä ja WebAssemblyyn koottu CanvasKit-renderöintimoottori.

Työpöytäsovellusten tuki on betavaiheessa, ja se vakiintuu myöhemmin tänä vuonna tulevassa julkaisussa. Canonical, Microsoft ja Toyota ovat ilmoittaneet tukevansa Flutter-kehitystä. Canonical on valinnut Flutterin sovellustensa pääkehykseksi ja käyttää myös Flutteria uuden asennusohjelman kehittämiseen Ubuntulle. Microsoft on mukauttanut Flutterin taitettaville laitteille, joissa on useita näyttöjä, kuten Surface Duo. Toyota aikoo käyttää Flutteria autojen infotainment-järjestelmiin. Myös Googlen kehittämän Fuchsia-mikroytimen käyttöjärjestelmän käyttäjäkuori on rakennettu Flutterin pohjalle.

Google esitteli Flutter 2 -kehyksen ja Dart 2.12 -kielen

Samaan aikaan julkaistiin ohjelmointikieli Dart 2.12, jossa Dart 2:n radikaalisti uudistetun haaran kehitystyö jatkuu. Dart 2 eroaa Dart-kielen alkuperäisestä versiosta vahvan staattisen kirjoituksen (tyypit voidaan päätellä automaattisesti, joten tyyppien määrittäminen ei ole pakollista, mutta dynaamista kirjoittamista ei enää käytetä ja alun perin laskettu tyyppi määritetään muuttujalle ja tiukkaa tyyppitarkistusta sovelletaan myöhemmin).

Julkaisu on huomionarvoinen Noll-turvatilan stabiloinnista, joka auttaa välttämään kaatumisia, jotka johtuvat yrityksistä käyttää muuttujia, joiden arvo on määrittelemätön ja asetettu nollaksi. Tila tarkoittaa, että muuttujilla ei voi olla nolla-arvoja, ellei niille ole nimenomaisesti määritetty arvoa null. Tila kunnioittaa tiukasti muuttujatyyppejä, mikä antaa kääntäjälle mahdollisuuden käyttää lisäoptimointeja. Tyyppiyhteensopivuus tarkistetaan käännösvaiheessa, jos esimerkiksi yrität antaa arvon "Null" muuttujalle, jonka tyyppi ei tarkoita määrittelemätöntä tilaa, kuten "int", näyttöön tulee virheilmoitus.

Toinen tärkeä parannus Dart 2.12:ssa on FFI-kirjaston vakaa toteutus, jonka avulla voit luoda korkean suorituskyvyn koodia, josta voit käyttää API:ita C:ssä. Tehtiin suorituskyvyn ja koon optimoinnit. Lisätty kehittäjätyökalut ja Flutterilla kirjoitettu koodin profilointijärjestelmä sekä uudet lisäosat Dart- ja Flutter-sovellusten kehittämiseen Android Studiolle/IntelliJ:lle ja VS Codelle.

Google esitteli Flutter 2 -kehyksen ja Dart 2.12 -kielen


Lähde: opennet.ru

Lisää kommentti