Альтернативы 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 здесь:

Примечательно

Я упомяну несколько, на 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

2022-09-28T08:49:10+00:00
Вопросы с похожей тематикой, как у вопроса:

Альтернативы JavaScript