Пуснат език за програмиране Dart 2.8

се състоя версия на езика за програмиране Dart 2.8, който продължава развитието на радикално преработен клон на Dart 2, пренасочен към разработка за уеб и мобилни системи и оптимизиран за създаване на компоненти от страна на клиента.

Dart 2 се различава от оригиналния език на Dart в използването на силно статично типизиране (типовете могат да бъдат изведени автоматично, така че спецификацията на типа не е задължителна, но динамичното въвеждане вече не се използва и първоначално изчисленият тип се присвоява на променлива и стриктната проверка на типа е приложен впоследствие). За разработка на уеб приложения предлагани набор от специфични библиотеки, като dart:html, както и уеб рамката Angular. Популяризира се рамка за създаване на мобилни приложения трептене, на базата на който, наред с други неща, е изградена потребителската обвивка на новата микроядрена операционна система, разработвана в Google Фузия.

В новата версия:

  • Добавени средства за безопасно използване на стойността Null, нарушавайки обратната съвместимост. Например, грешка по време на компилиране вече ще бъде хвърлена, ако се направи опит да се присвои стойността „Null“ на променлива от недефиниран тип, като например „int“. Бяха въведени и ограничения за съвместимостта на променливи с типове Nullable и non-Nullable, като например "int?" и "int" (на променлива с тип "int" може да бъде присвоена променлива с тип "int", но не и обратното). Същото важи и за променливите, върнати в оператора „return“ – ако в тялото на функцията на променлива с тип, който не позволява състояние „Null“, не е присвоена стойност, компилаторът ще покаже грешка. Тези промени ще ви позволят да избегнете сривове, причинени от опити за използване на променливи, чиято стойност е недефинирана и зададена на „Null“.
  • хранилище pub.dev премина границата от 10 хиляди пакета. Като част от цикъла на осигуряване на Dart 2.8, производителността на извличане на пакети от pub.dev е значително подобрена чрез поддържане на извличане на пакети в множество паралелни нишки при изпълнение на командата "pub get", както и мързелива предкомпилация при изпълнение на " pub run" команда. Тестването на командата „pub get“ за нов проект, базиран на Flutter, показа намаляване на времето за работа от 6.5 на 2.5 секунди, а за по-големи приложения като Flutter gallery от 15 на 3 секунди.
  • Добавена е нова команда „pub outdated“, за да се поддържат актуални всички зависимости на инсталираните пакети. С помощта на командата "pub outdated" можете да оцените, без да правите промени във файла pubspec, дали има по-нови основни версии на всички зависимости, свързани с определен пакет. За разлика от „pub upgrade“, новата команда проверява не само версиите, съответстващи на 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

Характеристики на езика Dart:

  • Познат и лесен за научаване синтаксис, естествен за JavaScript, C и Java програмисти.
  • Осигуряване на бързо стартиране и висока производителност за всички съвременни уеб браузъри и различни видове среди, от преносими устройства до мощни сървъри;
  • Способността да се дефинират класове и интерфейси, които позволяват капсулиране и повторно използване на съществуващи методи и данни;
  • Посочването на типове улеснява отстраняването на грешки и идентифицирането на грешки, прави кода по-ясен и по-четлив и опростява модификацията и анализа му от разработчици на трети страни.
  • Поддържаните типове включват: различни видове хешове, масиви и списъци, опашки, числови и низови типове, типове за определяне на дата и час, регулярни изрази (RegExp). Може би създаване на свой собствен видове;
  • За организиране на паралелно изпълнение се предлага използването на класове с атрибут isolate, чийто код се изпълнява изцяло в изолирано пространство в отделна област на паметта, взаимодействайки с основния процес чрез изпращане на съобщения;
  • Поддръжка за използването на библиотеки, които опростяват поддръжката и отстраняването на грешки на големи уеб проекти. Реализации на функции от трети страни могат да бъдат включени под формата на споделени библиотеки. Приложенията могат да бъдат разделени на части и да поверят разработването на всяка част на отделен екип от програмисти;
  • Набор от готови инструменти за подпомагане на разработката на езика Dart, включително внедряване на инструменти за динамична разработка и отстраняване на грешки с коригиране на кода в движение („редактиране и продължаване“);
  • За да се опрости разработката на езика Dart, той идва с SDK, мениджър на пакети кръчма, анализатор на статичен код dart_analyzer, набор от библиотеки, интегрирана среда за разработка DartPad и добавки с активиран Dart за IntelliJ IDEA, WebStorm, Emacs, Високият текст 2 и Vim;
  • Допълнителни пакети с библиотеки и помощни програми се разпространяват чрез хранилището кръчма, който има повече от 10 хиляди опаковки.

Източник: opennet.ru

Добавяне на нов коментар