Rhino (JavaScript-motor)

Neshorn Beskrivelse av bildet Inicio de ldp para 260px50px moziyarinocrnt.jpg.

Informasjon
Utviklet av Mozilla Foundation
Første versjon 1997
Siste versjon 1.7.13 (2. september 2020)
Innskudd github.com/mozilla/rhino
Skrevet i Java
Type JavaScript-motor
Tillatelse Mozilla Public License
Nettsted www.mozilla.org/rhino og www.mozilla.org/rhino

Rhino er en gratis JavaScript- motor . Den er utviklet helt i Java av Mozilla Foundation (som også tilbyr SpiderMonkey , en JavaScript- motor skrevet i C ).

Den distribueres under vilkårene for MPL og GNU GPL lisenser .

Netscape startet Rhino-prosjektet i 1997 ved starten av utviklingen av Javagator , en Java- nettleser ment å erstatte deres allerede eksisterende nettleser, Netscape Navigator . Javagator ble forlatt, men Rhino overlevde, og ble til og med sparket av flere selskaper, som finansierte utviklingen. Mozilla Foundation arvet Rhino i 1998, og gjorde det åpen kildekode deretter.

Teknisk beskrivelse

Neshorn kan brukes alene, som tolk, men også integrert i en applikasjon. På samme måte er den i stand til å operere i tolket modus, akkurat som i kompilert modus.

Objekter utstilt av Rhino

Rhino gir i prinsippet innfødte objekter definert av språkspesifikasjonen (f.eks String. DateEtc.). Vi finner derfor ikke at de vanligvis blir eksponert av JavaScript-motorobjektene i forskjellige nettlesere (f.eks window. documentEtc.).

Imidlertid tillater Java-implementeringen en bruker å bruke alle tilgjengelige Java-objekter, som vist i følgende kode (hentet fra Mozilla Help):

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

I tillegg avslører bruken i skallmodus en rekke tilleggsfunksjoner, som du finner på Mozilla-nettstedet.

Hver av Rhino-innebygde applikasjoner kan vise sine egne funksjoner. For eksempel, som en nettleser, ville Javagator ha eksponert en full HTML DOM for Rhino, slik at manipulering av HTML-miljøet via JavaScript ble mulig.

Endelig tilbyr versjon 6 av Java API nå et generelt grensesnitt for implementering av hvilken som helst skriptmotor, og inkluderer Rhino som standard. Rhino blir deretter erstattet av Nashorn , og starter med Java SE 8.

Kompilert modus og tolket modus

Rhino er i stand til å operere i kompilert modus (skriptet kompileres deretter til Java bytecode, Rhino kan til og med generere binærfiler .classog knytte dem til pakker), og i tolket modus (skriptet blir deretter samlet til JavaScript-objekter).

I kompilert modus kan Rhino konkurrere i ytelse med SpiderMonkey , dets C-implementerte ekvivalent, men den vil fortsatt lide av minnelekkasjer . I tolket modus er skriptkompilering raskere, og det oppstår ingen minnelekkasjer, men skriptet er da tregere.

Anekdoter

Merknader og referanser

  1. Utgivelse 1.7.13  " ,2. september 2020(åpnet 13. september 2020 )
  2. (in) "  Scripting Java  " ( ArkivWikiwixArchive.isGoogle • Hva skal jeg gjøre? ) , På mozilla.org .
  3. (in) JavaScript-skall .
  4. (in) John O'Conner, Scripting for the Java Platform  " ( ArkivWikiwixArchive.isGoogle • Hva skal jeg gjøre? ) , På java.sun.com .
  5. (in) "  Rhino History  " .
  6. (in) Book JavaScript: The Definitive Guide, 3. utgave , O'Reilly Media .
  7. Modell: Url = http: //www6.uniovi.es/java-http/pr951204-03.html .

Se også

Eksterne linker