Заменил ли JavaScript Java в качестве нового языка программирования «Пиши один раз, работай где угодно» (WORA)? Все зависит от вашей точки зрения. А с появлением на сцене таких технологий, как WebAssembly, Java может получить развитие в новомодной парадигме «напиши один раз, скомпилируй где угодно».

Java будет работать везде, где работает JVM, обеспечивая переносимость между многими операционными системами и аппаратными платформами, включая мобильные и встроенные устройства. Но JavaScript, всегда критически важный для приложений в браузере, теперь работает для настольных приложений с помощью таких технологий, как Электронный каркас, для мобильных приложений через такие фреймворки, как React Native, а для веб-серверов через Node.js и Дено, отмечает разработчик Шалита Суранга, автор Фреймворк Neutralino JavaScript / TypeScript.

JavaScript работает даже для Интернета вещей и разработки робототехники с помощью таких инструментов, как NodeMCU. «В настоящее время все, что мы можем делать с Java, можно сделать и с помощью JavaScript», – сказал Суранга, инженер-программист в разработчике цифровых продуктов 99x и член комитета по управлению проектами Apache. Недавно он написал статью о Середина утверждая, что JavaScript, а не Java, был сегодняшним языком WORA.

JavaScript: от веб-браузеров до серверов и устройств

В то время как статья Суранги на Medium провозгласила, что JavaScript бессмертен, а Java медленно умирает, он не сказал бы, что JavaScript убивает Java как язык программирования. Скорее Суранга утверждает, что во всех тех местах, где сияла Java – настольных приложениях, веб-серверах, веб-клиентах, мобильных приложениях, приложениях Smart TV – JavaScript теперь выполняет эти роли лучше, чем Java. В частности, JavaScript управляет веб-браузером, где Java-апплеты не смогли прижиться. Даже для мобильных приложений Android Java уступила место кроссплатформенным фреймворкам JavaScript, таким как Ionic, React Native и NativeScript.

Но в Oracle, которая курирует разработку стандартной версии Java, идея предполагаемого отказа Java в пользу JavaScript была встречена скептически. «Мы слышим, что Java умерла вот уже 15 лет, и она остается чрезвычайно важной платформой», – сказал Чад Аримура, вице-президент по связям с разработчиками группы платформ Java в Oracle. Компания опубликовала последнюю версию стандарта Ява, Java 16, 16 марта.

В Азул, поставщик сред выполнения Java, которые конкурируют с Oracle, компания подчеркнула не только преимущества WORA виртуальной машины Java, но и масштабируемость, которую обеспечивает JVM, особенно на стороне сервера. «Да, это правда, что JavaScript полностью кроссплатформенный, потому что он находится в браузере и работает на любой платформе, на которой вы хотите его запустить», – сказал Саймон Риттер, заместитель технического директора Azul, добавив: «Я думаю, что Java все еще безусловно, имеет большое преимущество с точки зрения производительности на стороне сервера ».

WebAssembly: новая жизнь Java?

Такие технологии, как WebAssembly и Spring Native, представляют новый поворот в концепции WORA. Позволяя компилировать различные языки программирования в переносимые или собственные исполняемые файлы, они по существу отделяют язык от платформы времени выполнения. Разработчики могут использовать Java без JVM.

В Формат двоичных инструкций WebAssembly служит механизмом для программирования в браузере, а WebAssembly – целью компиляции для других языков, запускаемых в сети. В Проект компилятора JWebAssembly в разработке направлен на запуск Java в браузере через WebAssembly. WebAssembly также можно развернуть на сервере через Время выполнения Wasmer. С WebAssembly Java может использоваться везде, где идет JavaScript.

Тем не менее, Suranga по-прежнему видит преимущества JavaScript в простоте использования и динамических функциях. Хотя можно было бы привести аргумент, что WebAssembly может сделать Java бессмертным, позволяя использовать Java в веб-разработке без использования JavaScript, разработчики все же, вероятно, в конечном итоге углубятся в JavaScript, утверждал Суранга.

Spring NativeМежду тем, позволяет использовать программирование на Java для создания автономных исполняемых файлов без JVM. Приложения Spring Java (и Kotlin) компилируются в собственные образы. В GraalVM многоязычная среда выполнения используется в Spring Native, которая только что перешла на стадию бета-версии.

Авторские права © 2021 IDG Communications, Inc.


#Переходите #на #Java #JavaScript #это #новая #работа #Либо #это

Source link