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

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

23 мая 201421: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");
  • Возможность создавать однородные системы, охватывающие как клиентскую, так и серверную часть. Использование одного языка и инструментария для клиентских и серверных компонентов упрощает процесс кодирования и избавляет от постоянной смены контекста.

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

31.03.2014
Представив обновленную версию своего флагманского смартфона One, компания HTC после весьма непростого для себя прошлого года попытается запустить процесс перезагрузки. Но если HTC не улучшит маркетинг своих устройств, ее ждут тяжелые времена.
10.04.2014
Московский государственный университет им. М.В. Ломоносова заключил соглашение о сотрудничестве с исследовательским подразделением Microsoft Research. Соглашение подразумевает поддержку научных проектов в университете по обработке и визуализации больших объемов данных и компьютерному зрению. На их реализацию Microsoft Research выделяет 1 млн долл., соглашение заключено сроком на три года.
23.09.2013
Все, кто любит много разговаривать по мобильному телефону, просто не может представить свою жизнь без безлимитных тарифов, которые с каждым годом становятся все популярнее и имеют новые преимущества.Для большинства операторов в последние годы стало не выгодно надавать безлимитные тарифы своим клиентам, поэтому почти все они ввели отдельные ограничения. К примеру, компания Beeline сделала 2 разные безлимитные тарифы - «Максимальный» и «Максимум».
28.02.2013
Стивен Вольфрам (Stephen Wolfram), создатель популярной компьютерной программы Mathematica и системы извлечения знаний WolframAlpha познакомил читателей собственного блога с результатами любопытного проекта «Data Donor». Это масштабное исследование позволяет проследить на примере пользователей популярной социальной сети, как изменяются привязанности, предпочтения и приоритеты на протяжении всей человеческой жизни. «Мне всегда нравилось наблюдать за людьми и изучать их жизненные траектории, – сообщает автор блога, – однако до недавнего момента я не знал, как увязать это увлечение с моим интересом к научным исследованиям». В рамках проекта «Data Donor» ученые постарались рассмотреть разные аспекты жизни среднестатистического пользователя Facebook. К примеру, в опубликованном отчете можно обнаружить графики, наглядно иллюстрирующие процесс «обрастания» друзьями.
15.08.2015
Сегодня очень сложно представить жизнь современного человека без интернета. Всемирная паутина стала для многих таким же привычным явлением как книги или другие источники информации. Если вы решили впервые подключить интернет или сменить провайдера, то стоит обратить внимание на следующие особенности поставщика услуги.

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

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