Rhino (движок JavaScript) - Википедия - Rhino (JavaScript engine)
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
Разработчики) | Фонд Mozilla, Mozilla Corporation |
---|---|
Стабильный выпуск | 1.7.12 / 13 января 2020 г. |
Репозиторий | |
Написано в | Ява |
Операционная система | Кроссплатформенность |
Платформа | Виртуальная машина Java |
Тип | Движок JavaScript |
Лицензия | MPL 2.0 |
Интернет сайт | www |
Носорог это Движок JavaScript написано полностью на Ява и управляется Фонд Mozilla в качестве программное обеспечение с открытым исходным кодом. Он отделен от ПаукОбезьяна движок, который также разработан Mozilla, но написан на C ++ и используется в Mozilla Firefox.
История
Проект Rhino стартовал в Netscape в 1997 году. В то время Netscape планировала выпустить версию Netscape Navigator полностью написан на Java, поэтому требовалась реализация JavaScript, написанного на Java. Когда Netscape перестал работать Джавагатор, как его называли, проект Rhino был завершен как движок JavaScript. С тех пор несколько крупных компаний (включая Sun Microsystems) лицензировали Rhino для использования в своих продуктах и заплатили за это Netscape, что позволило продолжить работу над ним.
Первоначально Rhino компилировал весь код JavaScript в Байт-код Java в сгенерированном Файлы классов Java. Это обеспечило лучшую производительность, часто превосходящую реализацию JavaScript на C ++, работающую с своевременная компиляция (JIT), но имел две ошибки. Во-первых, время компиляции было долгим, поскольку генерация байт-кода и загрузка сгенерированных классов была ресурсоемким процессом. Кроме того, реализация эффективно утечка памяти поскольку большинство Виртуальные машины Java (JVM) не собирать неиспользуемые классы или струны которые интернированный в результате загрузки файла класса.[нужна цитата ] (Это изменилось в более поздних версиях Java.)
В результате осенью 1998 года в Rhino был добавлен режим интерпретации. Код создания файла классов был перенесен в необязательный, динамически загружается упаковка. Компиляция выполняется быстрее, и когда сценарии больше не используются, их можно собирать, как любой другой объект Java.
Rhino был выпущен в Фонд Mozilla в апреле 1998 года. Первоначально создание файлов классов Rhino было отложено до выпуска. Однако лицензиары Rhino теперь согласились выпустить весь Rhino с открытым исходным кодом, включая создание файлов классов. С момента выпуска с открытым исходным кодом Rhino нашел множество применений, и все большее количество людей вносили свой вклад в код.[1] Проект получил свое название от животного на обложке книги по JavaScript от O'Reilly Media.[2] Начиная с версии 1.7R11 (май 2019 г.), Rhino поддерживает Java 8 и выше, а также поддерживает ряд ECMAScript ES6 / ES2015 особенности.[3]
Использовать
Rhino конвертирует скрипты JavaScript в классы. Rhino работает в обоих составлен и интерпретированный режим. Он предназначен для использования на рабочем столе или на стороне сервера приложений, поэтому нет встроенной поддержки веб-браузер объекты, которые обычно ассоциируются с JavaScript.
Rhino можно использовать как отладчик с помощью Rhino ракушка. Оболочка JavaScript обеспечивает простой способ запуска сценариев в пакетном режиме или в интерактивной среде для исследовательского программирования. Его можно использовать в приложениях, встраивая Rhino.
Приходит немного модифицированная версия Rhino 1.6r2. в комплекте с Sun Microsystems релиз Java SE версия 6, выпущенная в декабре 2006 г. Это упрощает интеграцию JavaScript как части программ Java и доступ к ресурсам Java из JavaScript. Другие реализации Java 6 могут отличаться.
Смотрите также
- Движок JavaScript
- Список движков ECMAScript
- Nashorn (движок JavaScript) - ныне устаревший преемник Rhino для JVM, начиная с Java 8
Рекомендации
- ^ "История носорога". Фонд Mozilla. Получено 2008-03-20.
- ^ Книга О'Рейли по Javascript, вдохновившая на создание имени Rhino
- ^ «Поддержка Rhino ES2015». Фонд Mozilla. Получено 2019-08-13.