Rhino (silnik JavaScript)

Nosorożec Opis obrazu Inicio de ldp para 260px50px moziyarinocrnt.jpg.

Informacja
Opracowany przez Fundacja Mozilla
Pierwsza wersja 1997
Ostatnia wersja 1.7.13 (2 września 2020 r)
Kaucja github.com/mozilla/rhino
Napisane w Jawa
Rodzaj Silnik JavaScript
Licencja Licencja publiczna Mozilli
Stronie internetowej www.mozilla.org/rhino i www.mozilla.org/rhino

Rhino to darmowy silnik JavaScript . Został opracowany w całości w Javie przez Mozilla Foundation (która dostarcza również SpiderMonkey , silnik JavaScript napisany w C ).

Jest rozpowszechniany na warunkach licencji MPL i GNU GPL .

Netscape rozpoczął projekt Rhino w 1997 roku na początku rozwoju Javagatora , przeglądarki Java, która miała zastąpić ich już istniejącą przeglądarkę Netscape Navigator . Javagator został porzucony, ale Rhino przeżył, a nawet został zwolniony przez wiele firm, które sfinansowały jego rozwój. Fundacja Mozilla odziedziczyła Rhino w 1998 roku, a następnie uczyniła go otwartym kodem źródłowym.

Opis techniczny

Rhino może być używany samodzielnie, jako interpreter, ale może być również zintegrowany z aplikacją. Podobnie może działać w trybie interpretowanym, podobnie jak w trybie kompilowanym.

Obiekty wystawione przez Rhino

Rhino stanowi w zasadzie, że rodzime obiekty zdefiniowane w specyfikacji języka (na przykład String, Dateetc.). Nie są zatem znaleźć je zwykle narażony przez obiekty silnik JavaScript w różnych przeglądarkach (np window, documentitd.).

Jednak jego implementacja w języku Java pozwala użytkownikowi na użycie wszystkich dostępnych obiektów Java, jak pokazano w poniższym kodzie (pobranym z Pomocy Mozilli):

js> f = new java.io.File("test.txt") test.txt

Ponadto jego użycie w trybie powłoki ujawnia szereg dodatkowych funkcji, które można znaleźć na stronie Mozilli.

Każda z aplikacji osadzających Rhino może mieć swoje własne funkcje. Na przykład, jako przeglądarka internetowa, Javagator udostępniłby Rhino pełny HTML DOM , umożliwiając manipulowanie środowiskiem HTML poprzez JavaScript.

Wreszcie, wersja 6 Java API oferuje teraz ogólny interfejs do implementacji dowolnego silnika skryptowego i domyślnie zawiera Rhino. Rhino jest następnie zastępowany przez Nashorn , poczynając od Java SE 8.

Tryb kompilowany i tryb interpretowany

Rhino może działać w trybie skompilowanym (skrypt jest następnie kompilowany do kodu bajtowego Javy, Rhino może nawet generować pliki binarne .classi kojarzyć je z pakietami) oraz w trybie interpretowanym (skrypt jest następnie kompilowany do obiektów JavaScript).

W trybie skompilowanym Rhino może konkurować wydajnością ze SpiderMonkey , jego odpowiednikiem zaimplementowanym w C, ale nadal cierpiałby z powodu wycieków pamięci . W trybie interpretowanym kompilacja skryptu jest szybsza i nie ma wycieków pamięci, ale skrypt działa wolniej.

Anegdoty

Uwagi i odniesienia

  1. Wersja 1.7.13  " ,2 września 2020 r(dostęp 13 września 2020 )
  2. (in) „  Skrypty Java  ” ( ArchiwumWikiwixArchive.isGoogle • Co robić? ) , Na mozilla.org .
  3. (in) JavaScript Shell .
  4. (w :) John O'Conner, „  Scripting for the Java Platform  ” ( ArchiveWikiwixArchive.isGoogle • What to do? ) , On java.sun.com .
  5. (w) „  Historia Rhino  ” .
  6. (w) Book JavaScript: The Definitive Guide, 3. wydanie , O'Reilly Media .
  7. Model: Url = http: //www6.uniovi.es/java-http/pr951204-03.html .

Zobacz też

Linki zewnętrzne