Dart 2.8 бағдарламалау тілі шығарылды

Орын алу бағдарламалау тілінің шығарылымы Дарт 2.8, ол түбегейлі қайта жасалған Dart 2 тармағын дамытуды жалғастырады, веб және мобильді жүйелерді әзірлеуге қайта назар аударды және клиенттік құрамдастарды жасау үшін оңтайландырылды.

Dart 2 бастапқы Dart тілінен күшті статикалық теруді қолдануымен ерекшеленеді (түрлерді автоматты түрде шығаруға болады, сондықтан түр спецификациясы міндетті емес, бірақ динамикалық теру бұдан былай пайдаланылмайды және бастапқы есептелген түр айнымалыға тағайындалады және қатаң түрді тексеру кейіннен қолданылған). Веб-қосымшаларды әзірлеуге арналған ұсынылды dart:html сияқты арнайы кітапханалар жиынтығы, сондай-ақ бұрыштық веб-рамка. Мобильді қосымшаларды жасау үшін негіз алға жылжытылуда Flutter, соның негізінде, басқа нәрселермен қатар, Google-да әзірленетін жаңа микроядро операциялық жүйесінің пайдаланушы қабығы құрастырылған. Фуксия.

Жаңа шығарылымда:

  • Қосылған кері үйлесімділікті бұза отырып, Null мәнін қауіпсіз пайдалануды білдіреді. Мысалы, «Int» сияқты анықталмаған түрдегі айнымалыға «Нөл» мәнін тағайындауға әрекет жасалса, енді компиляция уақыты қатесі шығарылады. «int?» сияқты Nullable және Nullable емес түрлерімен айнымалылардың үйлесімділігіне де шектеулер енгізілді. және «int» («int» типті айнымалыға «int» типті айнымалы тағайындалуы мүмкін, бірақ керісінше емес). Бұл «қайтару» операторында қайтарылған айнымалыларға да қатысты - егер функцияның негізгі бөлігінде «Нөл» күйіне рұқсат бермейтін түрдегі айнымалыға мән берілмесе, компилятор қатені көрсетеді. Бұл өзгертулер мәні анықталмаған және «Нөл» мәніне орнатылған айнымалы мәндерді пайдалану әрекеттерінен туындаған бұзылуларды болдырмауға мүмкіндік береді.
  • репозиторий pub.dev 10 мың пакет белгісінен өтті. Dart 2.8 дайындау циклінің бөлігі ретінде pub.dev сайтынан бумаларды шығарып алу өнімділігі "pub get" пәрменін орындау кезінде пакеттерді бірнеше параллель ағындарға шығаруды қолдау арқылы айтарлықтай жақсарды, сонымен қатар " pub іске қосу» командасы. Жаңа Flutter негізіндегі жоба үшін «pub get» пәрменін сынау жұмыс уақытының 6.5 секундтан 2.5 секундқа дейін, ал Flutter галереясы сияқты үлкенірек қолданбалар үшін 15 секундтан 3 секундқа дейін азайғанын көрсетті.
  • Орнатылған пакеттердегі барлық тәуелділіктерді жаңартып отыру үшін жаңа "pub ескірген" пәрмені қосылды. "pub outdated" пәрменін пайдаланып, pubspec файлына өзгертулер енгізбей, көрсетілген бумамен байланыстырылған барлық тәуелділіктердің жаңа негізгі нұсқаларының бар-жоғын бағалауға болады. Жаңа пәрмен «pub жаңартуынан» айырмашылығы pubspec-ке сәйкес нұсқаларды ғана емес, сонымен қатар жаңа филиалдарды да тексереді. Мысалы, "foo: ^1.3.0" және "bar: ^2.0.0" бекітілген тәуелділіктері бар бума үшін "pub outdated" іске қосу қол жетімді филиалдардың да, жаңарақ тармақтардың да болуын көрсетеді:

    Тәуелділіктер Ағымдағы жаңартылатын Шешілетін Соңғы
    foo 1.3.0 1.3.1 1.3.1 1.3.1
    бар 2.0.1 2.1.0 3.0.3 3.0.3

Дарт тілінің ерекшеліктері:

  • Таныс және үйренуге оңай синтаксис, JavaScript, C және Java бағдарламашылары үшін табиғи.
  • Портативті құрылғылардан қуатты серверлерге дейінгі барлық заманауи веб-шолғыштар мен әртүрлі орта түрлері үшін жылдам іске қосуды және жоғары өнімділікті қамтамасыз ету;
  • Бар әдістер мен деректерді инкапсуляцияға және қайта пайдалануға мүмкіндік беретін сыныптар мен интерфейстерді анықтау мүмкіндігі;
  • Түрлерді көрсету қателерді түзетуді және анықтауды жеңілдетеді, кодты түсінікті және оқылатын етеді және үшінші тарап әзірлеушілерімен оны өзгерту мен талдауды жеңілдетеді.
  • Қолдау көрсетілетін түрлерге мыналар жатады: хэштердің әртүрлі түрлері, массивтер мен тізімдер, кезектер, сандық және жолдық типтер, күн мен уақытты анықтауға арналған типтер, тұрақты өрнектер (RegExp). Мүмкін өзіңізді құру түрлері;
  • Параллельді орындауды ұйымдастыру үшін коды бөлек жады аймағында толығымен оқшауланған кеңістікте орындалатын, хабарламаларды жіберу арқылы негізгі процесспен әрекеттесетін оқшауланған атрибуты бар сыныптарды пайдалану ұсынылады;
  • Үлкен веб-жобаларды қолдауды және жөндеуді жеңілдететін кітапханаларды пайдалануды қолдау. Функциялардың үшінші тарап іске асырулары ортақ кітапханалар түрінде қосылуы мүмкін. Қолданбаларды бөліктерге бөлуге болады және әрбір бөлікті әзірлеуді бағдарламашылардың жеке тобына тапсыруға болады;
  • Dart тілінде әзірлеуді қолдауға арналған дайын құралдар жиынтығы, оның ішінде кодты тез түзетумен динамикалық әзірлеу және жөндеу құралдарын енгізу («өңдеу-және жалғастыру»);
  • Дарт тілінде дамуды жеңілдету үшін ол бірге келеді SDK, бума менеджері сырахана, статикалық код анализаторы dart_analyzer, кітапханалар жиынтығы, интеграцияланған өңдеу ортасы DartPad және Dart қосылған плагиндер IntelliJ IDEA, WebStorm, Emacs, Жоғары мәтін 2 и Vim;
  • Кітапханалары мен утилиталары бар қосымша пакеттер репозиторий арқылы таратылады сырахана, онда 10 мыңнан астам пакеттер бар.

Ақпарат көзі: opennet.ru

пікір қалдыру