Dart 2.12 on julkaistu, null-safety ja C-yhteensopivuus

click fraud protection

Google on julkaissut Dart 2.12:n, uuden version kielestä, jota käytetään sovellusten luomiseen Flutterissa. Julkaisu tulee Flutter 2.0:n rinnalla.

Kanssa Flutter 2.0:n julkaisu, Google on myös tuomassa Dart 2.12:n vakaaksi. Jos et tiennyt, Dart on kieli, jota Flutter käyttää. Se on TypeScript-pohjainen kieli, mutta sen mukana tulee joitain kieliominaisuuksia, mukaan lukien ne, joita aion käydä läpi.

Nollaturvallisuus

Nollaturvallisuus on hieno kieliominaisuus. Se pakottaa sinut pohtimaan, onko muuttuja koskaan nolla, ja käsittelemään eksplisiittisesti mahdollisia nollatilanteita, samalla kun voit taata, että tietyt muuttujat eivät koskaan ole nolla.

Dart 2.12:ssa on nyt täysi tuki null-safetylle, jonka syntaksi on samanlainen kuin Swift ja Kotlin. On jopa smart-casting, jossa jos Dart tietää varmasti, että normaalisti nollattava muuttuja ei voi olla nolla, se implisiittisesti lähettää sen ei-nullattavaan muotoon.

Koska null-safety on (erittäin) murtava muutos, tämä ominaisuus on valittavissa. Jos päivität Dart 2.12:een, kokoelmasi ei katkea, eikä sinun tarvitse käyttää tunteja lisäämällä mitättömyyteen liittyviä vihjeitä kaikkeen. Voit jopa käyttää nollaturvallisia riippuvuuksia, jos projektisi ei ole vielä nollaturvallinen.

Kun päätät siirtyä, voit käyttää sisäänrakennettua siirtotyökalua (tikka siirtyä) ja/tai muuttoliikkeen opas saadaksesi kaiken valmiiksi.

Vaikka null-safety sisältyy Dart 2.12:een, jos luot uuden Flutter-projektin, null-safety ei oteta käyttöön heti. Sinun on otettava se käyttöön manuaalisesti. Uusissa Dart-projekteissa nollaturva on käytössä.

Vierasfunktion käyttöliittymä

Vaikka Dart (ja Flutter) keskittyy täydelliseen eri alustojen yhteensopivuuteen, on silti joitain asioita, jotka täytyy vain tehdä alkuperäisesti. Natiivitoimintojen helpottamiseksi Dartissa on vierasfunktiorajapinta eli FFI. FFI: n avulla voit olla vuorovaikutuksessa Dartin C-koodin kanssa ilman, että sinun tarvitsee turvautua outoihin merkkijonopohjaisiin API-kutsuihin tai muihin kömpelöihin yhteentoimivuusmenetelmiin.

Ja Dart 2.12:n myötä FFI on nyt vakaa, mikä tarkoittaa, että se on valmis käytettäväksi tuotantoprojekteissa ja on enimmäkseen täydellinen.

Tätä silmällä pitäen FFI: ssä on joitain muutoksia, mukaan lukien pari rikkoutuvaa.

Suurin osa tämän julkaisun painopisteestä oli siinä, kuinka rakenteita voidaan käyttää Dartin ja C: n kanssa. Ensinnäkin voit nyt välittää rakenteita C-koodissasi viitteellä ja arvolla, missä aiemmin vain viittauksia tuettiin. Toinen tärkeä ominaisuus on sisäkkäisten rakenteiden tuki, jota ei ollut ennen tätä julkaisua.

Nyt murtaviin muutoksiin. Jos käytit FFI: tä, saatat joutua päivittämään koodisi toimimaan 2.12:n kanssa. Tällä FFI-versiolla et voi enää luoda tyhjiä rakenteita. Jos tarvitset sellaisen jostain syystä, voit käyttää uutta "Opaque" -tyyppiä. Joidenkin FFI: n sisäänrakennettujen toimintojen toimintaan on myös tehty joitain muutoksia, jotka voit tehdä lue tästä.

Lopuksi FFI: lle on uusi paketti, jonka avulla voit luoda FFI-kääreitä olemassa olevista C-otsikkotiedostoista. ffigen. Jos sinulla on paljon C-koodia, jota sinun on käytettävä, ja paljon API-menetelmiä, tämä on melko hyödyllistä. Vaikka C-koodin määrä on pieni, tämä on mukava mukavuusominaisuus.


Ja se on pitkälti Dart 2.12:ssa. Nollaturvallisuuden ja vakaan C-yhteensopivuuskirjaston ansiosta Dartista on tulossa erittäin monipuolinen kieli. Kerro meille mielipiteesi Dart 2.12:sta kommenteissa!