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

Обновление языка программирования Dart 1.4, развиваемого Google для замены JavaScript

23 мая 201420:23

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

В новой версии представлен инструментарий Observatory, предназначенный для анализа, отслеживания работы и улучшения кода на языке Dart. Работа Observatory построена на основе получаемой на лету актуальной статистики о работе виртуальной машины Dart. Observatory выдаёт информацию о работе сборщика мусора, выводит счётчики экземпляров для всех находящихся в памяти объектов, показывает детализированные данные о выполнении кода и вычислении выражений.

Из других улучшений выделяется завершение переработки на языке Dart статического анализатора кода dart_analyzer, который ранее был написан на Java. Проведена оптимизация файловых операций ввода/вывода, ускорение особенно ощутимо для больших файлов. Добавлена, пока работающая только в Linux, экспериментальная поддержка совместного использования сетевых сокетов между изолированными обработчиками (isolate).

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

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

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

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

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

14.01.2014
Команда сервиса Branch, позволяющего пользователям делиться ссылками на понравившиеся им новостные статьи, займется разработкой нового продукта для социальной сети Facebook.
26.05.2014
Молодая калифорнийская компания Energous представила в Сан-Франциско технологию WattUp, которая позволяет одновременно заряжать без использования проводов смартфоны, планшеты и другие небольшие гаджеты, расположенные в пределах одной комнаты. Основная идея основателя Energous Стивена Риззона (Stephen Rizzone) заключается в том, что наша жизнь была бы гораздо комфортнее, если бы наши устройства не были столь зависимы от проводов и розеток.
23.12.2013
Сервис Google AdMob, специализирующийся на размещении мобильной рекламы на платформах Android и iOS, по ошибке стал возвращать пользователям ранее потраченные на рекламу деньги.
28.08.2013
«Ростелеком» стал генеральным партнером VI Всероссийского форума «Электронное правительство – современный механизм управления регионом» и специализированной выставки «Информационные технологии Тюменской области – 2013» («ИНФОТЕХ-2013»), которые пройдут в Тюмени 11-12 сентября.Универсальный оператор связи презентует на выставке инновационные сервисы Национальной облачной платформы О7, предназначенные для информатизации социально значимых сфер жизни: «О7. Сити», «О7. 112», «О7. ЖКХ», «О7. Медицина» и «О7.

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

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