programmeerimiskeele väljaanne , mille, milles on jätkuvalt arendatud põhjalikult ümber tehtud Dart 2 haru, mis on suunatud veebilehe ja mobiilsüsteemide arendusele ning optimeeritud kliendipoolsete komponentide loomiseks.
Dart 2 erineb algsest Dart'i keelest tugeva staatilise tüpiseerimise rakendamise poolest (tüüpe saab automaatselt tuletada, seetõttu pole tüüpide määramine kohustuslik, kuid dünaamilist tüpiseerimist enam ei kasutata ja esialgu tuletatud tüüp jääb muutuja külge kinnitatud ning seda kontrollitakse rangelt edaspidi). Veebirakenduste arendamiseks on olemas spetsiifilised raamatukogude komplektid, nagu dart:html, ning veebiraamistik Angular. Mobiilirakenduste loomiseks on edendatud raamistiku , mille alusel on loodud kasutajaliides, mille kallal Google arendab uut mikrokerne operatsioonisüsteemi. .
Uues väljaandes:
- On lisatud vahendeid null-väärtuse turvaliseks kasutamiseks, mis rikuvad tagasiside ühilduvust. Näiteks kompileerimise ajal antakse nüüd viga, kui üritatakse null-väärtust määrata muutuja jaoks, mille tüüp ei tohi sisaldada määramatut olekut, nagu "int". Samuti on kehtestatud piirangud muutuja ühilduvuse kohta tüüpidega, mis lubavad nulli ja mis ei luba, nagu "int?" ja "int" (muutujale, mille tüüp on "int?", võib määrata muutuja, mille tüüp on "int", kuid mitte vastupidi). Sama kehtib ka muutuja kohta, mis tagastatakse "return" operaatoris - kui funktsiooni kehas ei ole nulli lubamisel mitte määratud tüübiga muutuja väärtust, annab kompilaator vea. Need muudatused aitavad vältida vargusi, mis on tingitud muutuja kasutamisest, mille väärtust ei ole määratud ja on null.
- Repo on ületanud 10 000 paketi piiri. Dart 2.8 ettevalmistamisprotsessi käigus on oluliselt paranenud pakettide laadimise jõudlus pub.dev'ist, toetades pakettide väljavõtmist mitmes paralleelselt töötavas protsessis käsu "pub get" käivitamisel, samuti on lisatud edasilükatud eelkompileerimine käsu "pub run" käivitamisel. Uue projekti testimine Flutteri baasil käsu "pub get" jaoks näitas operatsiooni aja vähenemist 6,5 sekundilt 2,5 sekundile ning suuremate rakenduste, nagu Flutteri galeriid, puhul 15-lt 3-le sekundi.
- On lisatud uus käsk "pub outdated", et hoida kõik sõltuvused ajakohasena. Käsk "pub outdated" võimaldab ilma muudatusteta pubspec failis hinnata, kas määratud paketi kõikide sõltuvuste jaoks on saadaval uuemaid olulisi versioone. Erinevalt "pub upgrade'ist", uus käsk kontrollib mitte ainult pubspec'iga kooskõlalisi versioone, vaid ka uuemaid haru. Näiteks sõltuvusega paketil "foo: ^1.3.0" ja "bar: ^2.0.0" näitab "pub outdated" käivitamine nii saadaval olevaid uuendusi kui ka uuemaid harusid:
Sõltuvused Praegune Uuendatav Lahendatav Uuena
foo 1.3.0 1.3.1 1.3.1 1.3.1
bar 2.0.1 2.1.0 3.0.3 3.0.3
Darti keele omadused:
- Tuttav ja lihtne õppida süntaks, mis on loomulik JavaScripti, C ja Java programmeerijatele.
- Kiire käivitamise ja kõrge jõudluse tagamine kõigis kaasaegsetes veebibrauserites ja erinevates keskkondades, alates kaasaskantavatest seadmetest kuni võimsate serveriteni;
- Klasside ja liideste määramise võimalus, mis võimaldab kapseldamist ja olemasolevate meetodite ning andmete taaskasutamist;
- Tüüpide määramine muudab tõrkeotsingu ja vigade avastamise lihtsamaks, teeb koodi selgemaks ja loetavamaks, lihtsustab selle täiendamist ja analüüsi teiste arendajate poolt.
- Toetatud tüüpide seas on: erinevad hashes, massiivid ja loendid, järjekorrad, numbrilised ja stringitüübid, kuupäeva ja aja määramise tüübid, regulaaravaldised (RegExp). Võimalik on tüüpe;
- Paralleelse täitmise korraldamiseks soovitatakse kasutada klassidesse kuuluvad isolaat, mille kood käib täielikult eraldatud ruumis eraldi mäluosas, suheldes põhiprotsessiga sõnumite saatmise kaudu;
- Toetatakse raamatukogude kasutamist, mis lihtsustavad suurte veebiprojektide haldamist ja silumist. Kolmandate isikute funktsioonide rakendusi saab ühendada jagatud raamatukogude kujul. Rakendusi saab jagada osadeks ja iga osa arendamine võib olla usaldatud erinevale arendajate meeskonnale;
- Komplekt tööriistu, et toetada arendust Dart keeles, sealhulgas dünaamilise arenduse ja silumise vahendite rakendamine otse koodiga parandamisel ("edit-and-continue");
- Darti arenduse lihtsustamiseks on saadaval , paketihaldur , staatiline koodianalüsaator , raamatukogude komplekt, integreeritud arenduskeskkond ja Dart toetavad pistikprogrammid , , ja ;
- Lisa paketid raamatukogude ja utiliitide jaoks jagatakse kaudu hoidla , mis hõlmab üle 10 000 paketi.
Allikas: opennet.ru
