Dart 2.8 programmeringsspråk släppt

tog plats programspråk release Dart 2.8, som fortsätter utvecklingen av en radikalt omdesignad Dart 2-gren, omfokuserad på utveckling för webb- och mobilsystem och optimerad för att skapa komponenter på klientsidan.

Dart 2 skiljer sig från det ursprungliga Dart-språket genom att använda stark statisk typning (typer kan härledas automatiskt, så typspecifikationen är valfri, men dynamisk typning används inte längre och den initialt beräknade typen tilldelas en variabel och strikt typkontroll är tillämpades senare). För webbapplikationsutveckling erbjuds en uppsättning specifika bibliotek, såsom dart:html, samt Angular webbramverk. Ett ramverk främjas för att skapa mobila applikationer fladder, på basis av vilket bland annat användarskalet för det nya mikrokärnoperativsystemet som utvecklas hos Google byggs Fuchsia.

I den nya utgåvan:

  • Tillagda medel för att säkert använda Null-värdet, vilket bryter bakåtkompatibiliteten. Till exempel kommer nu ett kompileringsfel att skapas om ett försök görs att tilldela värdet "Null" till en variabel av en odefinierad typ, såsom "int". Restriktioner har också införts för variablers kompatibilitet med Nullable och non-Nullable typer, såsom "int?" och "int" (en variabel med typen "int" kan tilldelas en variabel med typen "int", men inte vice versa). Detsamma gäller för variabler som returneras i "return"-satsen - om en variabel med en typ som inte tillåter "Null"-tillståndet inte tilldelas ett värde i funktionens kropp kommer kompilatorn att visa ett fel. Dessa ändringar gör att du kan undvika krascher orsakade av försök att använda variabler vars värde är odefinierat och satt till "Null".
  • förvaret pub.dev passerade 10 tusen paket. Som en del av Dart 2.8-provisioneringscykeln har prestandan för hämtning av paket från pub.dev förbättrats avsevärt genom att stödja hämtning av paket i flera parallella trådar när kommandot "pub get" körs, samt lat förkompilering vid exekvering av " pub run" kommandot. Att testa kommandot "pub get" för ett nytt Flutter-baserat projekt visade en minskning av drifttiden från 6.5 till 2.5 sekunder, och för större applikationer som Flutter Gallery, från 15 till 3 sekunder.
  • Lade till ett nytt "pub outdated"-kommando för att hålla alla beroenden av installerade paket uppdaterade. Genom att använda kommandot "pub outdated" kan du utvärdera, utan att göra ändringar i pubspec-filen, om det finns nyare huvudversioner av alla beroenden som är associerade med ett specificerat paket. Till skillnad från "pub upgrade" kontrollerar det nya kommandot inte bara versioner som motsvarar pubspec, utan även nyare filialer. Till exempel, för ett paket med fästa beroenden "foo: ^1.3.0" och "bar: ^2.0.0", kommer att köra "pub outdated" att visa närvaron av både tillgängliga filialer och nyare filialer:

    Beroenden Aktuell Uppgraderbar Lösbar Senaste
    foo 1.3.0 1.3.1 1.3.1 1.3.1
    stapel 2.0.1 2.1.0 3.0.3 3.0.3

Funktioner i Dart-språket:

  • Bekant och lättläst syntax, naturligt för JavaScript-, C- och Java-programmerare.
  • Säkerställer snabb lansering och hög prestanda för alla moderna webbläsare och olika typer av miljöer, från bärbara enheter till kraftfulla servrar;
  • Förmågan att definiera klasser och gränssnitt som tillåter inkapsling och återanvändning av befintliga metoder och data;
  • Att specificera typer gör det lättare att felsöka och identifiera fel, gör koden tydligare och mer läsbar och förenklar dess modifiering och analys av tredjepartsutvecklare.
  • Typer som stöds inkluderar: olika typer av hash, arrayer och listor, köer, numeriska och strängtyper, typer för att bestämma datum och tid, reguljära uttryck (RegExp). Kanske skapa din egen typer;
  • För att organisera parallell exekvering föreslås det att använda klasser med isolate-attributet, vars kod exekveras helt i isolerat utrymme i ett separat minnesområde, och interagerar med huvudprocessen genom att skicka meddelanden;
  • Stöd för användning av bibliotek som förenklar support och felsökning av stora webbprojekt. Tredjepartsimplementeringar av funktioner kan inkluderas i form av delade bibliotek. Ansökningar kan delas upp i delar och anförtro utvecklingen av varje del till ett separat team av programmerare;
  • En uppsättning färdiga verktyg för att stödja utveckling i Dart-språket, inklusive implementering av dynamisk utveckling och felsökningsverktyg med kodkorrigering direkt ("redigera-och-fortsätt");
  • För att förenkla utvecklingen i Dart-språket medföljer det SDK, pakethanterare pub, statisk kodanalysator dart_analyzer, uppsättning bibliotek, integrerad utvecklingsmiljö DartPad och Dart-aktiverade plugins för IntelliJ IDEA, WebStorm, Emacs, Sublim text 2 и vim;
  • Ytterligare paket med bibliotek och verktyg distribueras genom arkivet pub, som har mer än 10 tusen paket.

Källa: opennet.ru

Lägg en kommentar