Dart 2.8 programmeringssprog frigivet

tog sted udgivelse af programmeringssprog Dart 2.8, som fortsætter udviklingen af ​​en radikalt redesignet Dart 2-gren, omfokuseret på udvikling til web- og mobilsystemer og optimeret til at skabe komponenter på klientsiden.

Dart 2 adskiller sig fra det originale Dart-sprog ved brugen af ​​stærk statisk skrivning (typer kan udledes automatisk, så typespecifikation er valgfri, men dynamisk skrivning bruges ikke længere, og den oprindeligt beregnede type er tildelt en variabel, og streng typekontrol er efterfølgende anvendt). Til udvikling af webapplikationer tilbydes et sæt specifikke biblioteker, såsom dart:html, samt Angular web-framework. En ramme for at skabe mobile applikationer fremmes flagren, ud fra hvilket blandt andet brugerskallen til det nye mikrokernestyresystem, der udvikles hos Google, er bygget Fuchsia.

I den nye udgivelse:

  • Tilføjede midler til sikkert at bruge Null-værdien, hvilket bryder bagudkompatibiliteten. For eksempel vil der nu opstå en kompileringsfejl, hvis der gøres et forsøg på at tildele værdien "Null" til en variabel af en ikke-udefineret type, såsom "int". Der er også indført begrænsninger for kompatibiliteten af ​​variabler med Nullable og non-Nullable typer, såsom "int?" og "int" (en variabel med typen "int" kan tildeles en variabel med typen "int", men ikke omvendt). Det samme gælder for variabler, der returneres i "return"-sætningen - hvis en variabel med en type, der ikke tillader tilstanden "Null" i funktionens krop, ikke tildeles en værdi, vil compileren vise en fejl. Disse ændringer giver dig mulighed for at undgå nedbrud forårsaget af forsøg på at bruge variabler, hvis værdi er udefineret og sat til "Null".
  • depot pub.dev passerede de 10 tusinde pakker. Som en del af Dart 2.8-klargøringscyklussen er ydeevnen for hentning af pakker fra pub.dev blevet væsentligt forbedret ved at understøtte hentning af pakker i flere parallelle tråde, når kommandoen "pub get" udføres, såvel som doven prækompilering ved udførelse af " pub run" kommando. Test af kommandoen "pub get" for et nyt Flutter-baseret projekt viste et fald i driftstiden fra 6.5 ​​til 2.5 sekunder og for større applikationer som Flutter-galleriet fra 15 til 3 sekunder.
  • Tilføjet en ny "pub forældet" kommando for at holde alle afhængigheder af installerede pakker opdateret. Ved at bruge kommandoen "pub outdated" kan du evaluere, uden at foretage ændringer i pubspec-filen, om der er nyere større versioner af alle afhængigheder forbundet med en specificeret pakke. I modsætning til "pub upgrade" kontrollerer den nye kommando ikke kun versioner, der svarer til pubspec, men også nyere filialer. For eksempel, for en pakke med fastgjorte afhængigheder "foo: ^1.3.0" og "bar: ^2.0.0", vil kørsel af "pub outdated" vise tilstedeværelsen af ​​både tilgængelige filialer og nyere filialer:

    Afhængigheder Aktuel Opgraderbar Løsbar Seneste
    foo 1.3.0 1.3.1 1.3.1 1.3.1
    takt 2.0.1 2.1.0 3.0.3 3.0.3

Dart sprogfunktioner:

  • En velkendt og nem at lære syntaks, der er naturlig for JavaScript-, C- og Java-programmører.
  • Sikring af hurtig lancering og høj ydeevne for alle moderne webbrowsere og forskellige typer miljøer, fra bærbare enheder til kraftfulde servere;
  • Evnen til at definere klasser og grænseflader, der tillader indkapsling og genbrug af eksisterende metoder og data;
  • Angivelse af typer gør det lettere at fejlfinde og opdage fejl, gør koden klarere og mere læsbar og gør det nemmere for tredjepartsudviklere at forfine og analysere den.
  • Understøttede typer omfatter: forskellige typer hashes, arrays og lister, køer, numeriske og strengtyper, typer til bestemmelse af dato og klokkeslæt, regulære udtryk (RegExp). måske skabe din egen typer;
  • For at organisere parallel eksekvering foreslås det at bruge klasser med isolate-attributten, hvis kode udføres helt i isoleret rum i et separat hukommelsesområde, der interagerer med hovedprocessen ved at sende beskeder;
  • Support til brug af biblioteker, der forenkler support og fejlretning af store webprojekter. Tredjepartsimplementeringer af funktioner kan inkluderes i form af delte biblioteker. Ansøgninger kan opdeles i dele og overlade udviklingen af ​​hver del til et separat team af programmører;
  • Et sæt færdige værktøjer til at understøtte udvikling i Dart-sproget, herunder implementering af dynamisk udvikling og fejlfindingsværktøjer med on-the-fly kodekorrektion ("rediger-og-fortsæt");
  • For at forenkle udviklingen i Dart-sproget følger den med SDK, pakkeansvarlig pub, statisk kodeanalysator dart_analyzer, sæt af biblioteker, integreret udviklingsmiljø DartPad og Dart-aktiverede plugins til IntelliJ IDEA, WebStorm, Emacs, Sublim tekst 2 и vim;
  • Yderligere pakker med biblioteker og hjælpeprogrammer distribueres gennem depotet pub, som har mere end 10 tusinde pakker.

Kilde: opennet.ru

Tilføj en kommentar