11 октября 2011 г.

Dart, язык веб-программирования от Google

Оригинал статьи: Dart, Google’s Programming Language for the Web

Альтернатива JavaScript, предлагаемая Google, теперь называется не Dash: название было изменено на Dart. Разработанный как объектно-ориентированный язык программирования, обладающий и гибкостью, и строгостью, Dart покажется знакомым программистам на Java и C++; в то же время он унаследовал некоторые преимущества сценарных языков типа JavaScript.

Dart — это «основанный на классах и определяемых типах язык программирования для создания веб-приложений» («a class-based optionally typed programming language for building web applications») и Google утверждает, что он лучше подходит для широкомасштабных проектов. «Разработанный в стремлении к простоте, эффективности и масштабируемости, язык Dart объединяет мощные возможности нового языка со знакомыми конструкциями — и получается ясный, легко читаемый синтаксис».

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

На текущий момент ни один браузер не поддерживает Dart, однако наверняка положение дел исправит Chrome, и в самом ближайшем будущем. Код может выполняться «либо на исходной виртуальной машине, либо поверх JavaScript-машины с использованием компилятора, переводящего код Dart в JavaScript». Google уже запустил в онлайне простенькую ИСР (интегрированную среду разработки, IDE) под названием Dartboard. Сегодня она позволяет редактировать прямо в браузере короткие программы, однако должна развиться в полнофункциональную онлайновую ИСР.

В прошлом году один из сотрудников Google признал, что убедить разработчиков и распространителей браузеров внедрить новый язык будет крайне сложно, однако тот факт, что код Dart легко преобразуется в JavaScript, существенно облегчает дело. Google намерен продвигать Dart «как язык для серьёзных веб-разработок на веб-платформе» и собирается «предпринять активные действия для принятия его в качестве стандарта и повсеместного распространения». В конце концов, «цель проекта Dart состоит в том, чтобы в итоге заменить JavaScript в роли lingua franca (межнационального языка) веб-разработки на открытой веб-платформе». Трудно сказать, увенчается ли этот проект успехом, однако стоит попытаться избавиться от изъянов JavaScript, начав работу с нуля. Если Google сможет стандартизовать язык Dart, создать инструменты разработки и разработать на этой основе мощные приложения — это будет изменение к лучшему.