Lugha ya programu ya Dart 2.8 imetolewa

ilifanyika kutolewa kwa lugha ya programu Dart 2.8, ambayo inaendeleza uundaji wa tawi la Dart 2 lililoundwa upya kwa kiasi kikubwa, linalolenga upya uundaji wa mifumo ya Wavuti na ya simu na kuboreshwa kwa kuunda vipengee vya upande wa mteja.

Dart 2 inatofautiana na lugha ya asili ya Dart katika utumiaji wake wa uchapaji tuli wenye nguvu (aina zinaweza kudhaniwa kiotomatiki, kwa hivyo uainishaji wa aina ni wa hiari, lakini uchapaji unaobadilika hautumiki tena na aina iliyokokotwa hapo awali imepewa aina tofauti na ukaguzi wa aina kali ni. kutumika baadaye). Kwa maendeleo ya programu ya wavuti inayotolewa seti ya maktaba maalum, kama vile dart:html, pamoja na mfumo wa wavuti wa Angular. Mfumo unakuzwa kwa ajili ya kuunda programu za simu Flutter, kwa misingi ambayo, kati ya mambo mengine, shell ya mtumiaji wa mfumo mpya wa uendeshaji wa microkernel unaotengenezwa katika Google hujengwa. Fuchsia.

Katika toleo jipya:

  • Njia zilizoongezwa za kutumia thamani ya Null kwa usalama, na kuvunja utangamano wa kurudi nyuma. Kwa mfano, hitilafu ya muda wa mjumuisho sasa itatupwa ikiwa jaribio litafanywa la kuweka thamani ya "Null" kwa kigezo cha aina isiyobainishwa, kama vile "int". Vikwazo pia vimeanzishwa kuhusu upatanifu wa vigeuzo na aina Zisizoweza Kubatilika na zisizoweza Kubatilika, kama vile "int?" na "int" (tofauti na aina "int" inaweza kupewa kutofautisha na aina "int", lakini si kinyume chake). Vile vile hutumika kwa vigeu vilivyorejeshwa katika taarifa ya "rejesha" - ikiwa katika mwili wa chaguo za kukokotoa tofauti na aina ambayo hairuhusu hali ya "Null" haijapewa thamani, mkusanyaji ataonyesha hitilafu. Mabadiliko haya yatakuwezesha kuepuka kuacha kufanya kazi kunakosababishwa na majaribio ya kutumia vigeu ambavyo thamani yake haijafafanuliwa na kuwekwa kuwa "Null".
  • hazina pub.dev kupita alama ya vifurushi elfu 10. Kama sehemu ya mzunguko wa utoaji wa Dart 2.8, utendaji wa kurejesha vifurushi kutoka kwa pub.dev umeboreshwa kwa kiasi kikubwa kwa kusaidia urejeshaji wa vifurushi katika nyuzi nyingi sambamba wakati wa kutekeleza amri ya "pub get", na vile vile utayarishaji wa uvivu wakati wa kutekeleza " pub run" amri. Kujaribu amri ya "pub get" kwa mradi mpya unaotegemea Flutter kulionyesha kupungua kwa muda wa operesheni kutoka sekunde 6.5 hadi 2.5, na kwa programu kubwa zaidi kama vile nyumba ya sanaa ya Flutter, kutoka sekunde 15 hadi 3.
  • Imeongeza amri mpya ya "baa iliyopitwa na wakati" ili kusasisha utegemezi wote kwenye vifurushi vilivyosakinishwa. Kwa kutumia amri ya "pub iliyopitwa na wakati", unaweza kutathmini, bila kufanya mabadiliko kwenye faili ya pubspec, ikiwa kuna matoleo mapya zaidi ya vitegemezi vyote vinavyohusishwa na kifurushi maalum. Tofauti na "uboreshaji wa baa", amri mpya hukagua sio tu matoleo yanayolingana na pubspec, lakini pia matawi mapya zaidi. Kwa mfano, kwa kifurushi kilicho na vitegemezi vilivyobandikwa "foo: ^1.3.0" na "bar: ^2.0.0", inayoendesha "pub iliyopitwa na wakati" itaonyesha kuwepo kwa matawi yanayopatikana na matawi mapya zaidi:

    Vitegemezi vya Sasa Vinavyoweza Kutatuliwa Hivi Karibuni
    foo 1.3.0 1.3.1 1.3.1 1.3.1
    upau 2.0.1 2.1.0 3.0.3 3.0.3

Vipengele vya lugha ya Dart:

  • Sintaksia inayofahamika na rahisi kujifunza, asilia kwa watengeneza programu wa JavaScript, C na Java.
  • Kuhakikisha uzinduzi wa haraka na utendakazi wa hali ya juu kwa vivinjari vyote vya kisasa vya wavuti na aina mbalimbali za mazingira, kutoka kwa vifaa vinavyobebeka hadi seva zenye nguvu;
  • Uwezo wa kufafanua madarasa na violesura vinavyoruhusu ujumuishaji na utumiaji tena wa mbinu na data zilizopo;
  • Kubainisha aina hurahisisha utatuzi na kutambua makosa, hurahisisha msimbo kuwa wazi na kusomeka zaidi, na hurahisisha urekebishaji na uchanganuzi wake na wasanidi programu wengine.
  • Aina zinazotumika ni pamoja na: aina mbalimbali za heshi, safu na orodha, foleni, aina za nambari na mfuatano, aina za kuamua tarehe na wakati, maneno ya kawaida (RegExp). Labda kuunda yako mwenyewe aina;
  • Ili kuandaa utekelezaji wa sambamba, inapendekezwa kutumia madarasa na sifa ya pekee, kanuni ambayo inatekelezwa kabisa katika nafasi ya pekee katika eneo la kumbukumbu tofauti, kuingiliana na mchakato kuu kwa kutuma ujumbe;
  • Usaidizi wa matumizi ya maktaba ambayo hurahisisha usaidizi na utatuzi wa miradi mikubwa ya wavuti. Utekelezaji wa majukumu ya wahusika wengine unaweza kujumuishwa katika mfumo wa maktaba zinazoshirikiwa. Maombi yanaweza kugawanywa katika sehemu na kukabidhi maendeleo ya kila sehemu kwa timu tofauti ya watengeneza programu;
  • Seti ya zana zilizotengenezwa tayari kusaidia maendeleo katika lugha ya Dart, ikijumuisha utekelezaji wa zana madhubuti za ukuzaji na utatuzi kwa urekebishaji wa msimbo wa kuruka ("hariri-na-endelea");
  • Ili kurahisisha maendeleo katika lugha ya Dart, inakuja na SDK, meneja wa kifurushi pub, kichanganuzi cha msimbo tuli dart_analyzer, seti ya maktaba, mazingira jumuishi ya maendeleo DartPad na programu jalizi zilizowezeshwa na Dart za IntelliJ IDEA, WebStorm, Emacs, Nakala mazuri ya 2 ΠΈ Vim;
  • Vifurushi vya ziada na maktaba na huduma husambazwa kupitia hazina pub, ambayo ina vifurushi zaidi ya elfu 10.

Chanzo: opennet.ru

Kuongeza maoni