Rhino (motor JavaScript) - Rhino (JavaScript engine)

Rinocer
Inicio de ldp para 260px50px moziyarinocrnt.jpg
Dezvoltatori Fundația Mozilla , Mozilla Corporation
Versiune stabila
1.7.13 / 2 septembrie 2020 ; Acum 11 luni ( 02-09-2020 )
Repertoriu Editați acest lucru la Wikidata
Scris in Java
Sistem de operare Cross-platform
Platformă Mașină virtuală Java
Tip Motor JavaScript
Licență MPL 2.0
Site-ul web www .mozilla .org / rhino Editați acest lucru pe Wikidata

Rhino este un motor JavaScript scris integral în Java și administrat de Mozilla Foundation ca software open source . Este separat de motorul SpiderMonkey , care este, de asemenea, dezvoltat de Mozilla, dar scris în C ++ și utilizat în Mozilla Firefox .

Istorie

Proiectul Rhino a fost lansat la Netscape în 1997. La acea vreme, Netscape plănuia să producă o versiune a Netscape Navigator scrisă complet în Java și de aceea avea nevoie de o implementare a JavaScript scrisă în Java. Când Netscape a încetat să lucreze la Javagator , așa cum se numea, proiectul Rhino a fost finalizat ca un motor JavaScript. De atunci, câteva companii importante (inclusiv Sun Microsystems) au autorizat Rhino pentru utilizarea în produsele lor și au plătit Netscape pentru a face acest lucru, permițând continuarea lucrărilor.

Inițial, Rhino a compilat tot codul JavaScript în bytecode Java în fișiere de clasă Java generate . Acest lucru a produs cea mai bună performanță, depășind adesea implementarea C ++ a JavaScript rulat cu compilare just-in-time (JIT), dar a suferit două erori. În primul rând, timpul de compilare a fost de mult timp de la generarea unui bytecode și încărcarea claselor generate a fost un proces intensiv în resurse. De asemenea, implementarea a scurs în mod eficient memoria, deoarece majoritatea mașinilor virtuale Java (JVM) nu au colectat clase neutilizate sau șirurile care sunt internate ca urmare a încărcării unui fișier de clasă. (Acest lucru sa schimbat în versiunile ulterioare ale Java.)

Drept urmare, în toamna anului 1998, Rhino a adăugat un mod interpretativ. Codul de generare a fișierelor de clasă a fost mutat într-un pachet opțional, încărcat dinamic . Compilarea este mai rapidă și atunci când scripturile nu mai sunt utilizate, pot fi colectate ca orice alt obiect Java.

Rhino a fost lansat în Fundația Mozilla în aprilie 1998. Inițial generația de fișiere de clasă Rhino a fost reținută de la lansare. Cu toate acestea, licențiatorii Rhino au fost de acord acum să elibereze tot Rhino pentru open source, inclusiv generarea de fișiere de clasă. De la lansarea sa în open source, Rhino a găsit o varietate de utilizări și un număr tot mai mare de oameni au contribuit la cod. Proiectul își primește numele de la animalul de pe coperta cărții JavaScript de la O'Reilly Media . Începând cu versiunea 1.7R11 (mai 2019), Rhino acceptă Java 8 și versiuni ulterioare și acceptă o serie de funcții ECMAScript ES6 / ES2015.

Utilizare

Rhino convertește scripturile JavaScript în clase . Rhino funcționează atât în modul compilat, cât și în modul interpretat . Este destinat utilizării în aplicații desktop sau pe partea de server , prin urmare nu există suport încorporat pentru obiectele browserului Web care sunt asociate în mod obișnuit cu JavaScript.

Rhino poate fi folosit ca depanator folosind shell-ul Rhino . Învelișul JavaScript oferă o modalitate simplă de a rula scripturi în modul batch sau într-un mediu interactiv pentru programare exploratorie. Poate fi folosit în aplicații prin încorporarea Rhino.

O versiune ușor modificată a Rhino 1.6r2 vine împreună cu versiunea Sun Microsystems a versiunii Java SE 6, care a fost lansată în decembrie 2006. Acest lucru face mai ușoară integrarea JavaScript ca parte a programelor Java și accesarea resurselor Java din JavaScript. Alte implementări ale Java 6 pot diferi.

Vezi si

Referințe

linkuri externe