Dart 2.15 reo hotaka me te angamahi Flutter 2.8 e waatea ana

Kua whakaputahia e Google te tukunga o te reo hootaka Dart 2.15, e haere tonu ana te whakawhanaketanga o te peka kua oti te hanga hou o Dart 2, he rereke mai i te putanga taketake o te reo Dart ma te whakamahi i te patopato pateko kaha (ka taea te whakatau aunoa i nga momo, na reira. kare e tika te tautuhi momo, engari karekau e whakamahia te patopato hihiri, ka whakatauhia i te tuatahi ka tautapahia te momo ki te taurangi, katahi ka whakamahia te arowhai momo kaha).

Nga ahuatanga o te reo Dart:

  • He wetereo taunga me te ngawari ki te ako, he mea maori mo JavaScript, C me Java hötaka.
  • Te whakarite i te tere tere me te mahi teitei mo nga kaitirotiro paetukutuku hou katoa me nga momo taiao, mai i nga taputapu kawe ki nga kaitoro kaha.
  • Te kaha ki te tautuhi i nga karaehe me nga atanga ka taea te whakauru me te whakamahi ano i nga tikanga me nga raraunga o mua.
  • Ko te tautuhi momo ka ngawari ake te patuiro me te tautuhi i nga hapa, ka marama ake te waehere me te panui ake, me te whakangawari i te whakarereketanga me te tātaritanga a nga kaihanga tuatoru.
  • Ko nga momo e tautokohia ana ko: nga momo momo hashes, nga rarangi me nga rarangi, nga rarangi, nga momo tau me nga momo aho, nga momo mo te whakatau i te ra me te wa, nga whakaaturanga auau (RegExp). Ka taea te hanga i a koe ake momo.
  • Hei whakarite i nga mahi whakarara, e whakaarohia ana kia whakamahia nga karaehe me te huanga motuhake, ko te waehere ka mahia katoatia i roto i te waahi motuhake i roto i te waahi mahara motuhake, te taunekeneke me te kaupapa matua ma te tuku karere.
  • Tautoko mo te whakamahinga o nga whare pukapuka e ngawari ana te tautoko me te patuiro i nga kaupapa tukutuku nui. Ka taea te whakauru i nga mahi a te hunga tuatoru ki te ahua o nga whare pukapuka tiritahi. Ka taea te wehewehe i nga tono ki etahi waahanga ka tuku i te whanaketanga o ia waahanga ki tetahi roopu kaiwhakatakoto kaupapa motuhake.
  • He huinga taputapu kua rite hei tautoko i te whanaketanga o te reo Dart, tae atu ki te whakatinanatanga o te whanaketanga hihiri me nga taputapu patuiro me te whakatika waehere i runga i te rere (“whakatika-a-haere tonu”).
  • Hei whakangwari ake i te whakawhanaketanga i te reo Dart, ka tae mai me te SDK, he paparapara kaiwhakahaere mokihi, he kaitirotiro waehere pateko dart_analyzer, he huinga whare pukapuka, he taiao whanaketanga whakauru DartPad me Dart-whakahohea mono mo IntelliJ IDEA, WebStorm, Emacs, Kuputuhi Sublime 2 me Vim.
  • Ko etahi atu kohinga me nga whare pukapuka me nga taputapu ka tohatohahia i roto i te whare putunga pub, kei te 22 mano nga kohinga.

Nga huringa nui ki te tuku Dart 2.15:

  • Ka whakarato taputapu mo te mahi whakarara tere o nga mahi me te wehe o nga kaikawe. I runga i nga punaha maha-matua, ko te wa whakahaere a Dart ma te taunoa ka whakahaere i te waehere tono ki runga i tetahi matua CPU me te whakamahi i etahi atu matua ki te mahi i nga mahi punaha penei i te I/O tukutahi, tuhi ki nga konae, waea whatunga ranei. Mo nga tono e hiahia ana ki te whakahaere i o raatau kaikawe i roto i te whakarara, hei tauira, ki te whakaputa hākoritanga i roto i te atanga, ka taea te whakarewa i nga poraka motuhake o te waehere (motuhake), wehea mai i a raatau ano ka mahia ki runga i etahi atu papa CPU i te wa kotahi me te miro tono matua. . Hei whakamarumaru mai i nga hapa ka puta mai i te wa e mahi ana te wa kotahi o te waehere e mahi ana me te huinga raraunga kotahi, ka rahuitia te tiritiri o nga mea rereke i roto i nga poraka rereke rereke, ka whakamahia he tauira whakawhiti karere mo te taunekeneke i waenga i nga kaihautu.

    Ko te Dart 2.15 e whakaatu ana i tetahi ariā hou - nga roopu poraka motuhake (roopu wehe), e taea ai e koe te whakarite te uru tahi ki nga momo hanganga raraunga o roto i roto i nga poraka motuhake he waahanga o te roopu kotahi, ka taea te whakaiti i te nui o te utu i te wa e taunekeneke ana i waenga i nga kaihautu i roto i te roopu. . Hei tauira, he 100 nga wa tere ake te whakarewatanga o te poraka motuhake i roto i te roopu o naianei, me te 10-100 nga wa iti ake te mahara i te whakarewatanga o te poraka motuhake, na te whakakorenga o te hiahia ki te arawhiti i nga hanganga raraunga o te papatono.

    Ahakoa te mea kei te aukati tonu nga poraka wehe i roto i te roopu ki te uru tiritahi ki nga mea rereke, ka whakamahia e nga roopu he putunga putunga mahara, ka tere tere te whakawhiti taonga mai i tetahi poraka ki tetahi atu me te kore e hiahia ki te mahi i nga mahi kape kaha rawa. Ko te putanga hou ka taea e koe te tuku i te hua o te kaihautu i te wa e waea ana koe i Isolate.exit() ki te whakawhiti raraunga ki te paraka wehe matua me te kore e mahi kape. I tua atu, kua arotauhia te tikanga tuku karere - ko nga karere iti me te reo waenga kei te tukatuka i naianei tata ki te 8 nga wa tere ake. Ko nga mea ka taea te whakawhiti i waenga i nga wehe ma te whakamahi i te waea SendPort.send() kei roto etahi momo mahi, katinga, me nga tohu puranga.

  • I roto i nga taputapu mo te hanga tohu tohu ki nga mahi takitahi i roto i etahi atu mea (haehae), kua whakakorehia nga here mo te hanga tohu rite i roto i te waehere kaihanga, ka whai hua ki te hanga hononga i runga i te whare pukapuka Flutter. Hei tauira, ki te hanga i tetahi widget Tiwae kei roto nga widget Kuputuhi maha, ka taea e koe te karanga ".map()" ka tuku tohutohu ki te Kuputuhi.Kaihanga hou o te ahanoa Kuputuhi: te akomanga FruitWidget whakawhānui StatelessWidget { @override Widget hanga(BuildContext context) { Whakahokia te Tiwae( tamariki: ['Apple', 'Orange'].map(Text.new).toList()); }}
  • Kua whakawhänuihia nga huarahi e pa ana ki te whakamahi tohu tohu mahi. Kua taapirihia te kaha ki te whakamahi tikanga whanui me nga tohu tohu mahi hei hanga tikanga me te tohu tohu-kore: T id (Uara T) => uara; var intId = id ; // whakaaetia i te putanga 2.15 hei utu mo "int Function(int) intId = id;" const fo = id; // tohutohu ki te mahi id. const c1 = fo ;
  • Ko te dart:core library kua pai ake te tautoko mo nga enums, hei tauira, ka taea e koe te whakaputa i tetahi uara aho mai i ia uara enum ma te whakamahi i te tikanga ".ingoa", tohua nga uara ma te ingoa, ki te whakarite takirua uara: enum MyEnum { kotahi , rua, toru } void main() { print(MyEnum.one.name); // "kotahi" ka taia. print(MyEnum.values.byName('rua') == MyEnum.two); // "pono" ka taia. mahere whakamutunga = MyEnum.values.asNameMap(); tā(mapi['toru'] == MyEnum.toru); // "pono". }
  • Kua whakatinanahia he tikanga whakakope tohu tohu e taea ai te whakamahi i te ahua kiato o nga tohu i roto i nga taiao 64-bit mena ka ranea te mokowā wāhitau 32-bit mo te whakatika (kaore e neke ake i te 4 GB o te mahara ka whakamahia). Kua whakaatuhia e nga whakamatautau ka taea te whakaiti i te rahi o te puranga ki te 10%. I roto i te Flutter SDK, kua taea te aratau hou mo te Android ma te taunoa, a kua whakamaheretia kia taea mo iOS i roto i te tukunga a muri ake nei.
  • Kei roto i te Dart SDK nga taputapu mo te patuiro me te tātari mahi (DevTools), i tukuna i mua i roto i tetahi kete motuhake.
  • Kua taapirihia nga taputapu ki te whakahau "dart pub" me nga putunga kete pub.dev ki te whai i te whakaputanga ohorere o nga korero matatapu, hei tauira, ka waiho nga tohu mo nga punaha whakauru tonu me nga taiao kapua i roto i te kete. Mena ka kitea nga turuturu pera, ka haukotia te mahinga o te whakahau "dart pub publish" me te karere hapa. Mēnā he pai te hē, ka taea te karo i te haki mā te rārangi mā.
  • Ko te kaha ki te whakakore i tetahi putanga kua whakaputahia o te kete kua taapirihia ki te putunga putunga pub.dev, hei tauira, mena ka kitea nga hapa kino me nga whakaraeraetanga. I mua, mo enei whakatikatika, ko te mahi ko te whakaputa i tetahi putanga whakatika, engari i etahi ahuatanga me whakakorehia te tukunga o naianei me te aukati i tana tohatoha atu (hei tauira, mena kaore ano kia rite te whakatikatika, mena he tukunga katoa ranei. i whakaputa pohehe hei utu mo te putanga whakamatautau). I muri i te whakakorenga, kua kore e kitea te kete i roto i nga whakahau "pub get" me te "pub upgrade" whakahau, a ki runga i nga punaha kua oti te whakauru, ka tukuna he whakatupato motuhake hei te wa ka mahia te "pub get".
  • He whakamarumaru taapiri mo te whakaraeraetanga (CVE-2021-22567) na te whakamahi i nga tohu unicode i roto i te waehere ka huri i te raupapa whakaatu.
  • Kua whakatikahia he whakaraeraetanga (CVE-2021-22568) e taea ai e koe te whakatauira i tetahi atu kaiwhakamahi pub.dev i te wa e whakaputa ana i nga kete ki tetahi tūmau tuatoru e whakaae ana ki nga tohu uru pub.dev oauth2. Hei tauira, ko te whakaraeraetanga ka taea te whakamahi ki te whakaeke i nga kaitoro kete o roto me te umanga umanga. Ko nga kaiwhakawhanake e manaaki ana i nga kohinga i runga i te pub.dev kaore e pa ki tenei take.

I te wa ano, i tukuna he putanga nui o te anga atanga kaiwhakamahi Flutter 2.8, e kiia ana he rereke ki te React Native me te tuku, i runga i te turanga waehere kotahi, ki te tuku tono mo te iOS, Android, Windows, macOS me Ko nga papaaho Linux, me te hanga tono hei whakahaere i nga kaitirotiro. He anga ritenga mo te punaha whakahaere microkernel Fuchsia i hangaia e Google i hangaia i runga i te kaupapa o Flutter. E tohuhia ana i roto i nga marama e ono kua pahure ake nei, kua piki ake te maha o nga tono a Flutter 2 i roto i te Google Play Store mai i te 200 mano ki te 375 mano, ara. tata rua.

Ko te waahanga matua o te Waehere Flutter ka whakatinanahia i roto i te reo Dart, a ko te miihini whakahaere mo te whakahaere tono ka tuhia ki te C++. I te wa e whakawhanake ana i nga tono, i tua atu i te reo Dart taketake o Flutter, ka taea e koe te whakamahi i te atanga Dart Foreign Function ki te waea waehere C/C++. Ka tutuki te mahinga mahi nui ma te whakahiato tono ki te waehere taketake mo nga papaa whaaia. I tenei keehi, kaore e hiahiatia kia whakahiatohia te kaupapa i muri i ia huringa - Ka whakaratohia e Dart tetahi aratau whakahou wera e taea ai e koe te whakarereke i tetahi tono rere me te arotake tonu i te hua.

I roto i nga huringa o te tukunga hou o Flutter, ko te arotautanga o te tere whakarewatanga me te kohi mahara i runga i nga taputapu pūkoro kua tohua. He ngawari ake te hono i nga taupānga ki nga ratonga tuara penei i a Firebase me Google Cloud. Ko nga taputapu mo te whakauru ki a Google Ads kua pumau. Ko te tautoko mo nga kamera me nga taputapu paetukutuku kua tino pai ake. Ko nga taputapu hou kua whakaarohia kia ngawari te whakawhanaketanga, hei tauira, kua taapirihia he widget mo te motuhēhēnga ma te whakamahi i te Firebase. Ko te miihini Flame, i hangaia mo te whakawhanake keemu 2D ma te whakamahi i te Flutter, kua whakahoutia.

Source: opennet.ru

Tāpiri i te kōrero