Вышел релиз языка программирования Dart 1.3, развиваемого Google для замены JavaScript | Ofisp.org

Вышел релиз языка программирования Dart 1.3, развиваемого Google для замены JavaScript

11 апреля 201417:11

Компания Google представила новый выпуск языка программирования Dart 1.3, который позиционируется как язык структурированного программирования для Web, который в долгосрочной перспективе может стать прогрессивной заменой JavaScript. Код связанных с языком компонентов распространяются под лицензией BSD.

В новом выпуске отмечается существенный прогресс в наращивании производительности виртуальной машины и библиотеки dart:io.
Скорость выполнения серверных приложений, работающих в асинхронном режиме с использованием библиотеки dart:io, увеличилась в два раза, что позволило достигнуть уровня высокопроизводительных серверных платформ и делает Dart привлекательным решением для разработки серверных приложений. Разработка серверных систем на языке Dart также представляет интерес с точки зрения упрощения и ускорения процесса разработки, так как для серверных и клиентских компонентов используется общий язык программирования, единый набор библиотек и возможно совместное использование кода в клиентских и серверных частях проекта.

На графике выше отражено изменение производительности при выполнении трёх тестов по отдаче контента по HTTP. Тест Hello, который отражает скорость установки и обработки соединения, в Dart 1.3 выполняется на 130% быстрее. Тест File по отдаче статических файлов демонстрирует ускорение на 30%. Тест JSON, который позволяет оценить производительность REST-приложений, в Dart 1.3 выполняется почти в два раза быстрее.

В IDE Dart Editor операция запуска в форме JavaScript ("Run as JavaScript") теперь выполняется с использованием команды "pub serve", запускающей простой http-сервер, обеспечивающий отдачу компонентов web-приложения и выполняющий преобразование кода. Для разработчиков, использующих web-фреймворк Angular, в редактор кода добавлена поддержка автодополнения конструкций Angular и улучшены средства анализа кода и рефакторинга.

Внесены исправления в различные компоненты SDK, в том числе в
статический анализатор кода dart_analyzer, dart2js (компилятор в JavaScript), виртуальную машину Dart VM, пакетный менеджер pub, набор библиотек и плагины с поддержкой Dart для IntelliJ IDEA, WebStorm, Eclipse, Emacs, Sublime Text 2 и Vim. Dartium, сборка браузера Chromium с интегрированной виртуальной машиной Dart VM, обновлена до кодовой базы Chrome 34. В репозиторий pub добавлено 95 новых пакетов, общее число доступных пакетов составляет 825.

Напомним, что язык Dart обладает похожим на Java синтаксисом, не требует явного определения типов и может использоваться для создания серверных и клиентских приложений. Для запуска внутри браузера код на языке Dart может быть преобразован в JavaScript-представление или запущен напрямую под управлением специального JavaScript-интерпретатора Dartboard. Поддерживается встраивание кода на языке Dart в HTML-страницы, используя mime-тип "application/dart". На стороне сервера приложение на языке Dart может быть выполнено внутри специальной виртуальной машины, которая обеспечивает производительность выполнения близкую к компилируемым в машинный код языкам. Виртуальную машину Dart планируется интегрировать в будущие версии браузера Chrome, что позволит выполнять приложения на языке Dart без компиляции в JavaScript.

Особенности языка Dart:

  • Привычный и простой для изучения синтаксис, естественный для программистов на JavaScript, Си и Java.
  • Обеспечение быстрого запуска и высокой производительности для всех современных web-браузеров и различных типов окружений, от портативных устройств до мощных серверов;
  • Возможность определения классов и интерфейсов, позволяющих использовать инкапсуляцию и повторно использовать существующие методы и данные;
  • Необязательное указание типов, использовать или нет статические типы решает разработчик. Указание типов позволяет упростить отладку и выявление ошибок, делает код более ясным и читаемым, упрощает его доработку и анализ сторонними разработчиками.
  • Среди поддерживаемых типов: различные виды хэшей, массивов и списков, очереди, числовые и строковые типы, типы для определения даты и времени, регулярные выражения (RegExp). Возможно создание своих типов;
  • Для организации параллельного выполнения предлагается использовать классы с атрибутом isolate, код которых выполняется полностью в изолированном пространстве в отдельной области памяти, взаимодействуя с основным процессом через отправку сообщений;
  • Поддержка использования библиотек, упрощающих поддержку и отладку больших web-проектов. Сторонние реализации функций могут подключаться в виде разделяемых библиотек. Приложения можно разбить на части и поручить разработку каждой из частей отдельной команде программистов;
  • Набор готовых инструментов для поддержки разработки на языке Dart, включая реализацию средств динамической разработки и отладки с исправлением кода на лету ("edit-and-continue");
  • Возможность создавать однородные системы, охватывающие как клиентскую, так и серверную часть. Использование одного языка и инструментария для клиентских и серверных компонентов упрощает процесс кодирования и избавляет от постоянной смены контекста.

Похожие материалы

21.09.2016
Обычно пользователи выбирают именно айфон по причине хороших характеристик аккумулятора. С автономной работой Apple устройств проблем обычно нет и работают они долго без подзарядки. Но, оказывается, есть резервы, чтобы улучшить это время работы. А если ваш телефон уже не новый и быстрее стал разряжаться, то тем более нуждается в продлении автономной работы аккумулятора. Об это и поговорим в этой статье.
24.05.2014
При установке домашнего интернета важно правильно установить в квартире точку доступа. Точка доступа, как правило, представляет собой передатчик Wi-Fi. Именно к нему подключаются все имеющиеся в квартире цифровые устройства.
10.12.2013
В Минкомсвязи поступили жалобы от мобильных компаний, в которых утверждается, что конкуренты не хотят отпускать своих клиентов к другим операторам в рамках отмены «мобильного рабства» и создают препятствия. Об этом в номере от 10 декабря пишет газета «Ведомости» со ссылкой на неназванные источники. Компании «большой тройки» обвиняют друг друга в игнорировании части заявок на услугу переносимости номера (Mobile Number Portability, MNP), которая также известна как отмена «мобильного рабства».
29.09.2014
Практически у любой современной организации есть расходы на покупку оборудования или аренду сетевых устройств и серверов, услуги системного администратора, приобретение лицензионного программного обеспечение и прочее. Сократить эти затраты помогут облачные технологии. Например, арендовать весь объем вычислительных ресурсов в сетевом доступе.
04.10.2013
Корейский дизайнер, ранее привлекавшийся к работе на Агентство национальной безопасности США, изобрел целый набор шрифтов, которые не воспринимает софт, используемый для распознавания символов. В цифровом мире скрыться от посторонних глаз практически невозможно. Не спасает ни хитроумное шифрование, ни надежды на порядочных провайдеров, исключающих возможность «слива» пользователей спецслужбам. Данные шрифты помогут онлан-управление бизнесом, пример сериса которого указан в ссылке a2b.su/modules/projects/, дополнительно защитить от взлома хакеров. Однако при все своей мощи компьютеры остаются бессильными перед человеческим интеллектом.

Оборудование:

Общие характеристики Тип: Wi-Fi точка доступа Стандарт беспроводной связи: 802.11n, частота 2.4 ГГц...
→ Оставить отзыв
Для начала давайте определим что такое IPTV и мини-роутер. Мини-роутер (маршрутизатор) – сетевое...
→ Оставить отзыв
Подключение При подключении нового роутера к сети интернет необходимо подключить кабель провайдера...
→ Оставить отзыв
Сначала – посмотрим, что такое Wi-Fi 3G роутер вообще, и чем такие решения лучше «модемов». В...
→ Оставить отзыв