Obținerea de noi cadre și biblioteci tot timpul este ceva pentru care JavaScript este renumit. În iulie 2022, ecosistemul a primit un nou membru: Bun.js. Aici, vom arunca o privire la Bun.js și vom vedea cum afectează ecosistemul JavaScript mai larg.
Ce este Bun.js?
chifla este definit ca „un timp de rulare JavaScript all-in-one rapid”. Este al treilea de acest gen după Node.js și Deno.js, creat de Jarred Sumner folosind limbajul de programare Zig.
Scopul său principal este de a oferi o platformă pentru rularea JavaScript în afara browserului, la fel ca Node.js și Deno.js, dar Bun avansează pentru a oferi noi niveluri de viteză și complexitate sporită.
Cum a evoluat JavaScript
JavaScript a fost creat inițial pentru a rula numai în browsere, alimentate de motoare precum SpiderMonkey și V8. În 2009, Ryan Dahl a încorporat motorul V8 într-un program C++ pe care l-a numit Node.js. JavaScript, de atunci a devenit relevant pentru diverse utilizări, cum ar fi aplicațiile de pe partea de server și în timp real.
Modulele Promises și ES sunt exemple de caracteristici JavaScript moderne care nu existau când a fost creat Node.js. Ryan a ținut și o discuție în 2018 despre lucrurile pe care le-a regretat despre Node.js. Regretele sale au inspirat crearea Deno.js pe care l-a lansat în 2020.
Deno este un executabil construit cu Rust, care își propune să abordeze toate defectele Node, cum ar fi securitatea, performanța și suportul nativ TypeScript. Este semnificativ mai rapid și mai sigur decât Node și vine cu instrumente absente în Node.js.
Cu toate acestea, Deno nu a câștigat adoptarea masivă așteptată chiar și după patru ani de lansare, văzând că majoritatea sistemelor moderne sunt deja bazate pe noduri și schimbarea poate fi o durere pentru dezvoltatori. Trebuie să rescrie cele mai multe npm pachetele pentru sprijinul Deno contestă, de asemenea, adoptarea acestuia.
În iulie 2022, a apărut un nou timp de execuție în versiunea beta -- „Bun.js” -- care a fost un subiect popular în și în afara comunității JavaScript. Interoperabilitatea cu Node.js și performanța de mare viteză pe care pretinde că le oferă au fost piesa de spectacol. De asemenea, a stârnit discuții că în sfârșit există un „distrugător de noduri” în jur.
Cum se compară Bun.js cu Node.js și Deno.js?
Node, Deno și Bun sunt toate timpi de execuție pentru JavaScript în afara browserului, acest lucru nu neutralizează diferențele dintre ele.
Node.js a fost scris în C++, Deno în Rust și Bun în Zig. „Controlul la nivel scăzut asupra memoriei și lipsa fluxului de control ascuns în Zig fac mai ușor să scrieți software rapid”, afirmă site-ul lui Bun.
În timp ce Node și Deno rulează ambele motorul Google V8, Bun profită de performanța „pornire rapidă” a Webkit-ului. JavaScriptCore motorul pe care Apple Safari îl folosește. Rezultatele de referință de pe site-ul web arată cum Bun învinge atât Node, cât și Deno în performanță, funcționând de cel puțin 3 ori mai rapid decât ambele timpi de execuție.
Bun are npm (Manager de pachete Node) încorporat, ceea ce face instalarea pachetelor din npm ușoară și rapidă (de 20 ori viteza în Node), acceptă, de asemenea, TypeScript și auto-transpilează fișierele TS și JSX. Alte caracteristici interesante ale Bun includ un client SQLite3 încorporat, API-uri web precum fetch și WebSocket, încărcare automată a variabilelor de mediu și un rulant de testare.
Dintre toate trei, Bun ia tortul pentru performanță. Node rămâne cel mai stabil cu o comunitate foarte mare, în timp ce Deno este în prezent cea mai sigură.
Bun.js va afecta cu adevărat ecosistemul?
Ecosistemul este entuziasmat de lansarea lui Bun. Este acceptabil că hype-ul în jurul lui Bun a fost uriaș de la anunț. Este absolut o afacere atât de mare. Dezvoltatorii JavaScript le-ar plăcea foarte mult, având în vedere viteza sa „aprinsă” și instrumentele robuste pentru productivitate.
În plus, Serverul Bun’s Discord are deja peste 2000 de membri, ceea ce demonstrează entuziasmul din comunitate pentru această nouă tehnologie.
Care este viitorul Node.js, Deno.js și Bun.js?
JavaScript nu va dispărea prea curând. În realitate, este una dintre tehnologiile despre care suntem siguri că va exista în continuare peste 10 ani de acum înainte. Node, Deno și Bun au și ei viitor.
Node este încă actualizat regulat, versiunea 18.0 tocmai a fost lansată recent, prin urmare viitorul său rămâne intact chiar și cu Deno și Bun prin preajmă. Multe companii precum PayPal folosesc Node în infrastructurile lor și chiar și noi startup-uri urmează exemplul.
Cazul este similar pentru Deno, care se dezvoltă activ și crește. Deno avansează, de asemenea, într-o soluție SaaS pentru a furniza servicii de rulare JavaScript gestionate.
Bun.js este încă instabil și are suport limitat (aveți nevoie de Subsistemul Windows pentru Linux pentru a-l rula pe Windows). Deși are atât de multe capacități, nu poate fi o opțiune pentru software-ul gata de producție acum, deoarece mai este mult de lucru pentru el.
Deși viitorul este cu siguranță promițător pentru Bun, este logic să credem că aceste trei tehnologii vor ajunge cel mai probabil să coexiste în ecosistem, nu una o înlocuiește pe cealaltă.
Bun.js ar putea fi un schimbător de jocuri
Cu Bun, multe lucruri s-ar putea îmbunătăți cu JavaScript. Probabil că este timpul ca JavaScript să obțină o mai bună adoptare în domenii critice pentru performanță, cum ar fi AI/ML, dezvoltarea jocurilor etc. Îndreptați-vă spre Bun.sh site-ul web pentru a afla cum să instalați și să începeți dezvoltarea cu Bun.