Deno 1.0, sigurna JavaScript platforma Node.js

Objavljeni programeri Node.js nedavno lansiranje prva značajnija verzija Daj mi 1.0 koja dolazi nakon dvije godine razvoja. Ovo je platforma za odvojeno izvršavanje JavaScript i TypeScript aplikacija, koji se može koristiti za kreiranje kontrolera koji se izvode na serveru. Ne To nije grana Node.js-a, već je to novi projekt stvoren ispočetka.

Poput Node.js, Deno koristi V8 JavaScript motor, koji se takođe koristi u pregledačima zasnovanim na Chromium-u.  Ključna motivacija stvoriti novu JavaScript platformu bila je želja za uklanjanjem konceptualnih grešaka napravljenih u Node.js arhitekturi i korisnicima pružaju sigurnije okruženje.

Da bi se povećala sigurnost, veza oko V8 motora napisana je na jeziku Rust, Ovo izbjegava mnoge ranjivosti koje nastaju uslijed rada na niskoj razini s memorijom, kao što je pristup memorijskom području nakon što se oslobodi, pozivanje na null pokazivače i izlazak iz ograničenja međuspremnika.

Kôd projekta distribuira se pod licencom MIT i ima kompilacije pripremljene za Linux, Windows i macOS.

Što je novo u Deno 1.0

Ova nova verzija platforme, Istaknuta API stabilizacija u Deno imenskom prostoru, Šta su oni odgovoran za interakciju aplikacija s operativnim sistemom. Softverska sučelja koja još nisu stabilna su prema zadanim postavkama skrivena i dostupna su samo kad se pokrenu u nestabilnom načinu rada.

Kako se formiraju nove verzije, takvi će API-ji postupno postati stabilni. API u globalnom prostoru imena, koji uključuje uobičajene funkcije poput setTimeout () i fetch (), što je bliži API-ju uobičajenih web pregledača i razvijen je u skladu s web standardima za preglednike. API-ji Rust koji se koriste direktno u kodu platforme, kao i sučelje za razvoj dodataka za Deno runtime, još nisu stabilni i nastavljaju se razvijati.

Takođe, ističe da je radio na sigurnosnoj orijentaciji U zadanim postavkama za pristup datotekama mrežne mogućnosti i pristup varijablama okruženja su prema zadanim postavkama zaključani i zahtijevaju izričito uključivanje. Prema zadanim postavkama, aplikacije se izvode u izoliranim okruženjima u zaštićenom okruženju i ne mogu pristupiti sistemskim mogućnostima bez izričitih privilegija.

S druge strane, to se spominje u najavi nove verzije nativna podrška za TypeScript uz JavaScript. Da biste provjerili vrste i generirali JavaScript, koristi se standardni TypeScript kompajler, što dovodi do smanjenih performansi u odnosu na JavaScript raščlanjivanje u V8. U budućnosti planiramo pripremiti vlastitu implementaciju sistema provjere tipa TypeScript, što će nam omogućiti da značajno poboljšamo performanse TypeScript obrade.

Čas izvođenja dolazi u obliku jednog samostalnog izvršnog programa ("ne"). Za pokretanje aplikacija pomoću Denoa dovoljno je preuzeti izvršnu datoteku za vašu platformu, veličine približno 20 MB, bez vanjskih ovisnosti i koja ne zahtijeva posebnu instalaciju na sistem. Istovremeno, deno nije monolitna aplikacija, već zbirka paketa kutija u Rustu (deno_core, rusty_v8) koji se mogu koristiti zasebno.

Pored vremena izvođenja, platforma Deno također djeluje kao upravitelj paketa i omogućava pristup modulima putem URL-a unutar koda. Datoteke preuzete s vanjskih servera po URL-u se keširaju. Veza do verzija modula određena je uputama o broju verzije unutar URL-a.

Od ostalih inovacija koje se ističu ova verzija 1.0:

  • Učinkovita obrada HTTP mrežnih zahtjeva u aplikacijama, platforma je dizajnirana za stvaranje mrežnih aplikacija visokih performansi.
  • Mogućnost stvaranja univerzalnih web aplikacija koje se mogu pokretati i u Denou i u uobičajenom web pregledniku.
  • Prisustvo standardnog skupa modula, čija upotreba ne zahtijeva povezivanje s vanjskim ovisnostima. Moduli iz standardne kolekcije takođe su revidirani i testirani na kompatibilnost.
  • Okvir je integrirani sustav za provjeru ovisnosti (naredba «deno info») i uslužni program za formatiranje koda (deno fmt)
  • Sve skripte aplikacije mogu se kombinirati u jednu JavaScript datoteku.

Izvor: https://deno.land


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.