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

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

15.04.2014
Компания Epson представила обновление линейки Фабрика печати Epson четырехцветный принтер Epson L120. Новый принтер Epson L120 станет самым доступным по цене устройством из всей линейки Фабрика печати Epson. При этом он сохранит рекордно низкую себестоимость печати — всего от 0,005$ за цветной отпечаток А4.
28.03.2014
Компания LG Electronics официально назвала сроки старта мировых продаж своего смартфона G2 mini. Новинка выйдет не только в различных цветовых вариантах, но и в нескольких модификациях. Итак, уменьшенную версию флагманского смартфона LG G2 можно будет приобрести в Европе, Латинской Америке и Юго-Восточной Азии уже в конце марта. Вариация смартфона с поддержкой LTE-связи будет основана на четырехъядерном процессоре Qualcomm Snapdragon 400 с тактовой частотой 1,2 Ггц, а модификация с поддержкой 3G будет управляться 1,7-Ггц чипом NVIDIA Tegra 4i с теми же четырьмя ядрами.
08.10.2014
Мэтт Каттс, руководитель Google Webspam, продолжает давать развернутые ответы на каверзные вопросы вебмастеров и специалистов seo-компаний. В этот раз он рассуждал на тему целесообразности приобретения домена, контент которого был расценен поисковиком, как спам.
12.10.2016
Развивающие игры – это довольно популярная тема среди родителей, у которых дети еще совсем малыши или ученики начальной школы. Много и «за» и «против» можно услышать о развивающих онлайн-играх. Но дети есть дети – им подавай только игры. Чуть только  где свободная минутка – сразу сидят с головой в мамином или папином смартфоне.
20.02.2015
В этой статье мы опишем каким образом при помощи установленного на компьютер DLNA  сервера можно проигрывать онлайн видео на любом устройстве внутри вашей локальной сети. И все это без загрузки на компьютер.

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

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