Dart 2.8-programmeertaal vrygestel

plaasgevind programmeertaal vrystelling Dart 2.8, wat die ontwikkeling van 'n radikaal herontwerpte Dart 2-tak voortsit, herfokus op ontwikkeling vir web- en mobiele stelsels en geoptimaliseer vir die skep van kliënt-kant komponente.

Dart 2 verskil van die oorspronklike Dart-taal in sy gebruik van sterk statiese tik (tipes kan outomaties afgelei word, so tipe spesifikasie is opsioneel, maar dinamiese tik word nie meer gebruik nie en die aanvanklik berekende tipe word aan 'n veranderlike toegewys en streng tipe kontrolering is daarna toegepas). Vir webtoepassingsontwikkeling aangebied 'n stel spesifieke biblioteke, soos dart:html, sowel as die Angular-webraamwerk. 'n Raamwerk word bevorder vir die skep van mobiele toepassings fladder, op grond waarvan onder andere die gebruikersdop van die nuwe mikrokernbedryfstelsel wat by Google ontwikkel word, gebou word Fuchsia.

In die nuwe vrystelling:

  • Bygevoeg beteken om die Null-waarde veilig te gebruik, wat terugwaartse versoenbaarheid verbreek. Byvoorbeeld, 'n samestelling-tyd fout sal nou gegooi word as 'n poging aangewend word om die waarde "Nul" toe te ken aan 'n veranderlike van 'n nie-ongedefinieerde tipe, soos "int". Beperkings is ook ingestel op die verenigbaarheid van veranderlikes met Nullable en Nie-Nullable tipes, soos "int?" en "int" ('n veranderlike met tipe "int" kan 'n veranderlike met tipe "int" toegeken word, maar nie andersom nie). Dieselfde geld vir veranderlikes wat in die "return"-stelling teruggestuur word - as in die liggaam van die funksie 'n veranderlike met 'n tipe wat nie die "Null"-toestand toelaat nie, nie 'n waarde toegeken word nie, sal die samesteller 'n fout vertoon. Hierdie veranderinge sal jou toelaat om ineenstortings te vermy wat veroorsaak word deur pogings om veranderlikes te gebruik waarvan die waarde ongedefinieerd is en op "Nul" gestel is.
  • bewaarplek pub.dev het die 10 duisend pakkies merk geslaag. As deel van die Dart 2.8-voorsieningsiklus is die werkverrigting van die herwinning van pakkette vanaf pub.dev aansienlik verbeter deur die herwinning van pakkette in veelvuldige parallelle drade te ondersteun wanneer die "pub get"-opdrag uitgevoer word, sowel as lui voorafsamestelling wanneer die " pub run" opdrag. Die toets van die "pub get"-opdrag vir 'n nuwe Flutter-gebaseerde projek het 'n afname in die operasietyd van 6.5 tot 2.5 sekondes getoon, en vir groter toepassings soos Flutter-galery, van 15 tot 3 sekondes.
  • Het 'n nuwe "pub outdated"-opdrag bygevoeg om alle afhanklikhede van geïnstalleerde pakkette op datum te hou. Deur die "pub outdated"-opdrag te gebruik, kan jy evalueer, sonder om veranderinge aan die pubspec-lêer te maak, of daar nuwer hoofweergawes is van alle afhanklikhede wat met 'n gespesifiseerde pakket geassosieer word. In teenstelling met "pub upgrade", kontroleer die nuwe opdrag nie net weergawes wat ooreenstem met pubspec nie, maar ook nuwer takke. Byvoorbeeld, vir 'n pakket met vasgespelde afhanklikhede "foo: ^1.3.0" en "bar: ^2.0.0", sal die loop van "pub outdated" die teenwoordigheid van beide beskikbare takke en nuwer takke wys:

    Afhanklikhede Huidig ​​Opgradeerbaar Oplosbaar Nuutste
    foo 1.3.0 1.3.1 1.3.1 1.3.1
    maat 2.0.1 2.1.0 3.0.3 3.0.3

Dart taal kenmerke:

  • 'n Bekende en maklik om te leer sintaksis wat natuurlik is vir JavaScript-, C- en Java-programmeerders.
  • Verseker vinnige bekendstelling en hoë werkverrigting vir alle moderne webblaaiers en verskillende soorte omgewings, van draagbare toestelle tot kragtige bedieners;
  • Die vermoë om klasse en koppelvlakke te definieer wat inkapseling en hergebruik van bestaande metodes en data moontlik maak;
  • Deur tipes te spesifiseer, maak dit makliker om foute te ontfout en op te spoor, maak die kode duideliker en meer leesbaar, en maak dit makliker vir derdeparty-ontwikkelaars om dit te verfyn en te ontleed.
  • Ondersteunde tipes sluit in: verskeie tipes hashes, skikkings en lyste, toue, numeriese en string tipes, tipes vir die bepaling van datum en tyd, gereelde uitdrukkings (RegExp). Kan wees skep jou eie tipes;
  • Om parallelle uitvoering te organiseer, word voorgestel om klasse met die isolate-kenmerk te gebruik, waarvan die kode heeltemal in geïsoleerde ruimte in 'n aparte geheue-area uitgevoer word, in wisselwerking met die hoofproses deur boodskappe te stuur;
  • Ondersteuning vir die gebruik van biblioteke wat die ondersteuning en ontfouting van groot webprojekte vereenvoudig. Derdeparty-implementerings van funksies kan ingesluit word in die vorm van gedeelde biblioteke. Toepassings kan in dele verdeel word en die ontwikkeling van elke deel aan 'n aparte span programmeerders toevertrou;
  • 'n Stel gereedgemaakte nutsmiddels om ontwikkeling in die Dart-taal te ondersteun, insluitend die implementering van dinamiese ontwikkeling en ontfoutingsnutsgoed met on-the-fly kodekorreksie ("redigeer-en-gaan voort");
  • Om ontwikkeling in die Dart-taal te vereenvoudig, kom dit saam SDK, pakketbestuurder pub, statiese kode ontleder pyltjie_analyzer, stel biblioteke, geïntegreerde ontwikkelingsomgewing Dartpad en Dart-geaktiveerde plugins vir IntelliJ IDEE, WebStorm, Emacs, Sublieme teks 2 и Vim;
  • Bykomende pakkette met biblioteke en nutsprogramme word deur die bewaarplek versprei pub, wat meer as 10 duisend pakkette het.

Bron: opennet.ru

Voeg 'n opmerking