Новости и события » Hi-Tech » Доступен язык программирования Dart 2.1

Доступен язык программирования Dart 2.1

После трех месяцев разработки представлен релиз языка программирования Dart 2.1, в котором продолжено развитие кардинально переработанной ветки Dart 2, переориентированной на разработку для Web и мобильных систем и оптимизированной для создания компонентов, выполняемых на стороне клиента.

Dart 2 отличается от изначального варианта языка Dart применением строгой статической типизации (типы могут выводиться автоматически, поэтому указание типов не является обязательным, но динамическая типизация больше не используется и вычисленный изначально тип закрепляется за переменной и в дальнейшем применяется строгая проверка типа). Для разработки Web-приложений предлагается набор специфичных библиотек, таких как dart:html, а также web-фреймворк Angular. Для создания мобильных приложений продвигается фреймворк Flutter, на основе которого также построена пользовательская оболочка развиваемой в Google новой микроядерной операционной системы Fuchsia.

  • Обеспечена проверка типов на этапе компиляции (ранее проверка осуществлялась на этапе редактирования в IDE с использованием Dart Analyzer). Код проверки типов синхронизирован между компилятором и утилитой для анализа кода. Реализован вывод более ясных сообщений об ошибках, связанных с некорректным использованием типов;
  • Значительно ускорено выполнение проверки типов, как для компилируемого кода, так и для кода, выполняемого в виртуальной машине с JIT. Внесенные оптимизации позволили существенно ускорить работу инструментов для разработчиков. Например, время выполнения операции анализа кода крупного приложения, использующего фреймворк Flutter, уменьшилось с 41 до 25 секунд;
  • Повышена компактность генерируемого кода для Web. Размер кода выдаваемого транслятором dart2js в режиме минимизации вывода сокращен на 17%, а время компиляции сокращено на 15%;
  • Предложен новый синтаксис для "примесей" (mixin). Добавлено новое ключевое слово "mixin", которое можно использовать для определения классов, которые можно использовать только в виде примесей. Реализована возможность использования примесей для расширения других классов и вызова методов в образуемых примесями суперклассах;
  • Добавлена поддержка использования переменных с типом "int" в конструкция с типом "double" (в подобных случаях int автоматически преобразуется в double). Например, переменные с типом "int" теперь можно использовать в качестве аргументов вызовов, определенных с типом "double";
  • Добавлена официальная поддержка языка protobuf (Protocol buffers), используемого для сериализации структурированных данных.

На Донетчине враг не смог прорваться с Лиманского направления

На Донетчине враг не смог прорваться с Лиманского направления

На Донетчине сегодня у врага была попытка прорыва с Лиманского направления, но она в очередной раз не увенчалась успехом. Здесь враг не может продвинуться ни по одному направлению. Об этом во время телеэфира сообщил руководитель Донецкой областной военной...
Читать подробнее

Свежие новости Украины на сегодня и последние события в мире экономики и политики, культуры и спорта, технологий, здоровья, происшествий, авто и мото

Вверх