Dart 2.8 programming lus tso tawm

coj qhov chaw programming lus tso tawm TIAB SA 2.8, uas txuas ntxiv kev txhim kho ntawm radically redesigned Dart 2 ceg, refocused rau txoj kev loj hlob rau Web thiab mobile systems thiab optimized rau tsim cov neeg siv-sab Cheebtsam.

Dart 2 txawv ntawm cov lus qub Dart hauv nws txoj kev siv lub zog zoo li qub (hom tuaj yeem txiav txim siab tau, yog li hom kev qhia tshwj xeeb yog xaiv tau, tab sis dynamic typing tsis siv ntxiv lawm thiab hom pib xam tau muab rau qhov sib txawv thiab nruj hom tshuaj xyuas yog tom qab siv). Rau kev txhim kho web application muaj ib txheej ntawm cov tsev qiv ntawv tshwj xeeb, xws li dart: html, nrog rau Angular lub vev xaib. Lub moj khaum tau nce qib rau kev tsim cov ntawv thov mobile Dej nrov, ntawm lub hauv paus ntawm uas, ntawm lwm yam, cov neeg siv lub plhaub ntawm lub microkernel tshiab kev ua haujlwm tau tsim los ntawm Google yog tsim. Fuchsia.

Hauv qhov kev tso tawm tshiab:

  • Ntxiv txhais tau tias kom muaj kev nyab xeeb siv tus nqi Null, rhuav rov qab kev sib raug zoo. Piv txwv li, tam sim no qhov kev ua yuam kev ntawm lub sijhawm yuav raug muab pov tseg yog tias muaj kev sim ua kom muab tus nqi "Null" rau qhov sib txawv ntawm hom tsis tau txhais, xws li "int". Cov kev txwv kuj tau qhia txog kev sib raug zoo ntawm cov hloov pauv nrog Nullable thiab tsis yog Nullable hom, xws li "int?" thiab "int" (ib qho sib txawv nrog hom "int" tuaj yeem muab qhov sib txawv nrog hom "int", tab sis tsis hloov pauv). Tib yam siv rau cov hloov pauv tau xa rov qab rau hauv nqe lus "rov qab" - yog tias nyob rau hauv lub cev ntawm kev ua haujlwm hloov pauv nrog hom uas tsis tso cai rau lub xeev "Null" tsis tau muab tus nqi, lub compiler yuav pom qhov yuam kev. Cov kev hloov pauv no yuav tso cai rau koj kom tsis txhob muaj teeb meem tshwm sim los ntawm kev sim siv cov hloov pauv uas nws tus nqi tsis tau txhais thiab teem rau "Null".
  • chaw cia khoom pub.dev dhau 10 txhiab pob khoom cim. Raws li ib feem ntawm Dart 2.8 muab lub voj voog, qhov ua tau zoo ntawm kev khaws cov pob khoom los ntawm pub.dev tau zoo dua los ntawm kev txhawb nqa cov khoom rov qab mus rau ntau qhov sib luag thaum ua tiav "pub get" hais kom ua, nrog rau tub nkeeg ua ntej ua ntej thaum ua tiav " pub run" command. Kev sim "pub tau" cov lus txib rau qhov tshiab Flutter-raws li qhov project tau pom qhov txo qis hauv lub sijhawm ua haujlwm ntawm 6.5 mus rau 2.5 vib nas this, thiab rau cov ntawv loj dua xws li Flutter gallery, los ntawm 15 mus rau 3 vib nas this.
  • Ntxiv qhov tshiab "pub outdated" hais kom ua kom tag nrho cov kev vam khom ntawm cov pob khoom tau nruab mus rau hnub tim. Siv cov lus txib "pub outdated", koj tuaj yeem soj ntsuam, tsis tas yuav hloov pauv rau cov ntaub ntawv pubspec, txawm tias muaj cov tshiab loj dua tshiab ntawm txhua qhov kev vam khom cuam tshuam nrog pob ntawv teev tseg. Tsis zoo li "pub upgrade", cov lus txib tshiab xyuas tsis yog tsuas yog cov qauv sib xws rau pubspec, tab sis kuj muaj cov ceg tshiab. Piv txwv li, rau ib pob nrog pinned dependencies "foo: ^ 1.3.0" thiab "bar: ^ 2.0.0", khiav "pub outdated" yuav qhia tau tias muaj cov ceg ntoo thiab cov ceg tshiab:

    Dependencies Tam sim no Upgradable Resolvable Tseeb
    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

Cov yam ntxwv ntawm Dart lus:

  • Paub thiab yooj yim-rau-kawm syntax, ntuj rau JavaScript, C thiab Java programmers.
  • Ua kom muaj kev tshaj tawm sai thiab ua haujlwm siab rau txhua qhov web browsers niaj hnub thiab ntau hom kev ib puag ncig, los ntawm cov khoom siv nqa tau mus rau cov servers muaj zog;
  • Lub peev xwm los txhais cov chav kawm thiab cov interfaces uas tso cai rau encapsulation thiab rov siv cov txheej txheem thiab cov ntaub ntawv uas twb muaj lawm;
  • Kev qhia tshwj xeeb ua rau nws yooj yim dua rau kev debug thiab txheeb xyuas qhov yuam kev, ua rau cov cai meej dua thiab nyeem tau yooj yim, thiab ua kom yooj yim rau nws cov kev hloov kho thiab kev tshuaj xyuas los ntawm cov neeg tsim tawm thib peb.
  • Cov hom kev txhawb nqa muaj xws li: ntau hom hashes, arrays thiab cov npe, queues, cov lej thiab cov hlua, hom kev txiav txim siab hnub thiab sijhawm, cov lus qhia tsis tu ncua (RegExp). Tej zaum tsim koj tus kheej hom;
  • Txhawm rau txhim kho kev ua kom sib luag, nws tau thov kom siv cov chav kawm nrog tus cwj pwm cais, cov cai ntawm kev ua tiav tag nrho hauv qhov chaw sib cais hauv thaj chaw nco, cuam tshuam nrog cov txheej txheem tseem ceeb los ntawm kev xa cov lus;
  • Kev them nyiaj yug rau kev siv cov tsev qiv ntawv uas yooj yim rau kev txhawb nqa thiab kev debugging ntawm lub vev xaib loj. Thib peb qhov kev siv ntawm kev ua haujlwm tuaj yeem suav nrog hauv daim ntawv ntawm cov tsev qiv ntawv sib koom. Cov ntawv thov tuaj yeem muab faib ua ntu thiab tso siab rau kev txhim kho ntawm txhua ntu rau ib pab pawg neeg ua haujlwm sib cais;
  • Ib txheej ntawm cov cuab yeej npaj tau los txhawb kev txhim kho hauv cov lus Dart, suav nrog kev siv cov kev txhim kho dynamic thiab debugging cov cuab yeej nrog rau kev hloov kho code ("kho-thiab-mus ntxiv");
  • Txhawm rau kom yooj yim txoj kev loj hlob hauv Dart lus, nws los nrog SDK, tus thawj tswj pob pub, static code analyzer dart_analyzer, teeb tsa tsev qiv ntawv, kev sib koom ua ke kev loj hlob ib puag ncig DartPad thiab Dart-enabled plugins rau IntelliJ IDEA, WebStorm, Emacs, Sublime ntawv 2 ΠΈ Vim;
  • Cov pob khoom ntxiv nrog cov tsev qiv ntawv thiab cov khoom siv hluav taws xob raug faib los ntawm qhov chaw cia khoom pub, uas muaj ntau tshaj 10 txhiab pob khoom.

Tau qhov twg los: opennet.ru

Ntxiv ib saib