Google поняла, что, поскольку большинство программистов знают JavaScript, один из хороших способов заставить их использовать Dart-это предоставить руководство для программиста JavaScript.
Как заставить программистов переключаться на другой язык?
Самый очевидный способ-убедиться, что новый язык настолько хорош, что вы были бы идиотом, если бы не использовали его. Потерпев неудачу в этой простой стратегии, вы также можете попытаться снизить барьер для перехода на новый язык.
Dart-это предложенная Google замена JavaScript, и в своей основной форме она берет программу, написанную на Dart, и преобразует ее в JavaScript, чтобы она могла работать в любом браузере. Теперь Google понял, что, поскольку большинство программистов знают JavaScript, один из хороших способов заставить их использовать Dart-это предоставить руководство для программиста JavaScript.
Синоним JavaScript to Dart — это веб-сайт, на котором перечислены общие идиомы JavaScript и то, как они переводятся в Dart.
Процитируем Аарона Уилера в блоге Google Code:
Мы начали с основ, которые знает каждый разработчик JavaScript и jQuery: переменные, массивы, функции, классы, манипуляции с DOM и многое другое. Затем, с помощью команды Dart, мы записали соответствующие версии Dart каждой идиомы. Чтобы практиковать то, что мы узнали, мы написали это приложение с помощью Dart.
Проблема с лексиконом такого рода заключается в том, что он варьируется от тривиального и очевидного, хотя и очень тонкого. Например, довольно очевидное:
язык JavaScript:
номера var = [42, 2.1, 5, 0.1, 391];
числа.сортировка(функция(a, b) {
возврат a — b;
});
Дротик
номера var = [42, 2.1, 5, 0.1, 391];
числа.сортировка((a, b) => a — b);
очень тонкое:
язык JavaScript
человек функции() {
this.name = null;
};
Person.prototype.greet = функция() {
ответьте «Привет», + this.name;
}
Дротик
классный человек {
имя var;
greet() => ‘Привет, $name’;
}
Если вы знаете какой-либо JavaScript, вы будете знать, что это охватывает огромный спектр вариантов создания класса. Это не синтаксическое изменение.
И в какой-то степени это проблема. Если новый язык просто включает в себя синтаксическое изменение, то это почти наверняка будет бесполезный обмен. Чтобы получить какое-либо реальное преимущество, должны быть некоторые семантические изменения, которые не могут быть выражены просто как правило типа «вместо написания этого». Чтобы использовать новый язык, вы должны думать по-другому, иначе язык не стоит усилий.
Так что спасибо Google за усилия, но потребуется нечто большее, чем это, чтобы получить Dart в слот номер один.