Альтернативы JavaScript
Компилировать в Javascript
На данный момент использование .js языка, который компилируется vanillajs в Javascript, кажется единственным vanilla-js реалистичным способом достичь ecmascript всех платформ при написании javascript более умного кода, и, вероятно, так javascript будет еще долгое время. С js любым новым предложением js всегда найдется причина, по js которой один или несколько js поставщиков не поспешат его vanilla-js отправить.
(Но я действительно browser не думаю, что это проблема. Javascript vanilla-js к настоящему времени хорошо vanilla-js оптимизирован. Машинный код vanilla-js также небезопасен, если написан vanillajs вручную, но отлично работает .js как целевой объект компиляции web-browser и язык выполнения.)
Так много вариантов
Число browsers языков, которые компилируются ecmascript в Javascript, постоянно растет. Достаточно vanilla-js полный список можно найти .js здесь:
- List of languages that compile to JS в Coffeescript Wiki.
Примечательно
Я упомяну несколько, на javascript-dom мой взгляд, заслуживающих javascript-execution внимания (при этом, несомненно, пренебрегаю vanilla-javascript некоторые драгоценные камни, о javascript-dom которых я не знаю):
-
Spider появился vanilla-js в 2016 году. Он утверждает, что vanillajs вобрал в себя лучшие идеи .js Go, Swift, Python, C# и CoffeeScript. Это vanilla-js небезопасно, но в нем есть vanillajs незначительный safety features.
-
Elm: Haskell vanilla-js может быть самым умным языком из всех, а Elm vanilla-javascript - это вариант Haskell для javascript Javascript. Он хорошо осведомлен javascript о типах и лаконичен и предлагает javascript Функциональное реактивное программирование в качестве удобной альтернативы browser реактивным шаблонам или спагетти javascript MVC. Но это может быть весьма vanillajs шоком для процедурных программистов.
-
Go Google нацелен на краткость, простоту javascript-dom и безопасность. Код Go можно javascript-library скомпилировать в Javascript javascript-library с помощью GopherJS.
-
Dart - это более поздняя web-browser попытка Google заменить Javascript. Он javascript-dom предлагает интерфейсы и абстрактные browser классы через синтаксис, подобный javascript-library C / Java, с необязательной ecmascript типизацией.
-
Haxe похож на ActionScript javascript-dom от Flash, но он может настраивать таргетинг на несколько языков, поэтому javascript-library ваш код можно повторно использовать javascript-execution в программах Java, C, Flash, PHP .js и Javascript. Он предлагает vanilla-javascript типобезопасные и динамические vanilla-javascript объекты.
-
Opalang добавляет синтаксический js сахар в Javascript, чтобы vanillajs обеспечить прямой доступ к базе данных, интеллектуальное browser продолжение, проверку типов ecmascript и помощь в разделении клиент javascript / сервер. (Привязан к NodeJS vanilla-javascript и MongoDB.)
-
GorillaScript, «язык компиляции в JavaScript, разработанный для расширения возможностей пользователя при попытке предотвратить некоторые распространенные ошибки». похож на Coffeescript, но javascript-dom более всеобъемлющий, предоставляя vanilla-js множество дополнительных javascript-execution функций для повышения безопасности vanilla-js и сокращения повторяющихся ecmascript шаблонных шаблонов.
-
LiteScript находится web-browser где-то между Coffeescript javascript и GorillaScript. Он предлагает .js синтаксис async / yield для javascript «встроенных» обратных вызовов javascript-library и проверку опечаток в переменных.
-
Microsoft .js TypeScript - это небольшая надмножество vanilla-javascript Javascript, которое позволяет web-browser накладывать ограничения типа web-browser на аргументы функции, что javascript может выявить несколько ошибок. Точно browsers так же BetterJS позволяет применять js ограничения, но в чистом browser Javascript, либо путем добавления web-browser дополнительных вызовов, либо javascript путем указания типов в комментариях javascript-library JSDoc. А теперь Facebook vanilla-js предлагает Flow, который дополнительно javascript выполняет вывод типов.
-
LiveScript - это browsers дополнительный продукт от javascript-library Coffeescript, который был javascript-execution популярен благодаря своей ecmascript краткости, но мне не очень javascript-execution удобен для чтения. Наверное, не vanillajs лучший вариант для команд.
Как выбрать?
При browser выборе альтернативного языка следует javascript-library учитывать несколько факторов:
-
Если vanilla-javascript в будущем к вашему проекту browser присоединятся другие разработчики, сколько javascript-dom времени им потребуется, чтобы browsers освоить этот язык и выучить vanillajs этот язык, или каковы шансы, что vanilla-javascript они его уже знают?
-
Имеет ли browser язык слишком мало функций javascript (код по-прежнему будет содержать vanillajs шаблонный код) или слишком javascript-dom много функций (освоение займет javascript-execution много времени, а до тех пор javascript-execution какой-то действительный код vanilla-js может быть неразборчивым)?
-
Есть .js ли в нем функции, необходимые javascript-dom для вашего проекта? (Требуется .js ли вашему проекту проверка browsers типов и интерфейсы? Нужны js ли ему интеллектуальные продолжения, чтобы browser избежать ада вложенных обратных javascript вызовов? Есть ли много реактивности? Может vanilla-javascript быть, в будущем потребуется javascript-execution нацелить его на другие среды?)
Будущее ...
Джефф javascript-execution Уокер написал a thought-provoking series сообщений javascript-library в блоге о «проблеме Javascript», в browsers том числе о том, почему он browsers не считает, что ни TypeScript, ни Dart, ни javascript Coffeescript не предлагают адекватных vanilla-javascript решений. Он предлагает некоторые javascript-library желательные функции для улучшенного .js языка в the conclusion.
javascript
browser
Альтернативы JavaScript
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.