Deno već podržava npm module

deno npm

Platformu razvija Ryan Dahl, kreator Node.js.

Nedavno objavljena je vijest o izlasku nove verzije Deno frameworka 1.28, koji omogućava izvršavanje samostalnih JavaScript i TypeScript aplikacija koje se mogu koristiti za kreiranje kontrolera koji rade na serveru.

Deno je kreiran da korisnicima pruži sigurnije okruženje i eliminisati konceptualne greške u arhitekturi Node.js. Kako bi se poboljšala sigurnost, veza oko V8 motora je napisana u Rust-u, čime se izbjegavaju mnoge ranjivosti koje nastaju zbog rukovanja memorijom niskog nivoa.

Za obradu zahtjeva u neblokirajućem načinu, koristi se Tokyo framework, također napisan u Rustu. Tokyo vam omogućava da kreirate aplikacije visokih performansi zasnovane na arhitekturi vođenoj događajima, podržavajući višenitnost i obradu mrežnih zahteva u asinhronom režimu.

Neke od karakteristika Deno-ovi glavni su sljedeći:

  • Ugrađena podrška za TypeScript jezik uz JavaScript. Za provjeru tipova i generiranje JavaScripta, koristi se obični prevodilac TypeScript, što dovodi do pada performansi u poređenju sa raščlanjivanjem JavaScripta u V8.
  • Vrijeme izvođenja dolazi u obliku jednog samostalnog izvršnog fajla ("deno"). Da biste pokrenuli aplikacije koristeći Deno, jednostavno preuzmite izvršnu datoteku za svoju platformu, veličine oko 30 MB, koja nema vanjske ovisnosti i ne zahtijeva nikakvu posebnu instalaciju na vašem sistemu.
  • Efikasna aplikacijska obrada mrežnih zahtjeva putem HTTP-a, platforma je dizajnirana za kreiranje mrežnih aplikacija visokih performansi
  • Mogućnost kreiranja univerzalnih web aplikacija koje mogu raditi i na Deno-u i na običnom web pregledniku
  • Prisutnost standardnog skupa modula, čija upotreba ne zahtijeva vezivanje za vanjske ovisnosti.
  • Moduli Standard Collection su dodatno revidirani i testirani na kompatibilnost
  • Paket uključuje ugrađeni sistem inspekcije zavisnosti (deno info komanda) i uslužni program za formatiranje koda (deno fmt)
  • Sve aplikacijske skripte mogu se kombinovati u jednu JavaScript datoteku.

Glavne novine Deno 1.28

Ključna promjena u novoj verziji je stabilizirana kompatibilnost s paketima smještenim u npm spremištu, šta omogućava Deno-u da koristi više od 1,3 miliona modula izgrađen za Node.js platformu. Na primjer, aplikacije zasnovane na Denou sada mogu koristiti trajne module za pristup podacima kao što su Prisma, Mongoose i MySQL, kao i front-end okvire kao što su React i Vue.

Neki npm moduli su još uvijek nekompatibilni sa Deno-om, na primjer, zbog vezivanja za određena okruženja Node.js, kao što je datoteka package.json. Također nije moguće koristiti naredbu "deno compile" sa NPM modulima. Planirana su buduća izdanja kako bi se riješile ove nekompatibilnosti i ograničenja.

Sistem modula ECMAScript naslijeđen od Denoa i model modula Web API ostaju isti, a Deno-ova dobro poznata šema učitavanja zasnovana na URL-u se koristi za uvoz NPM modula.

Korišćenje NPM paketa u Deno-u je mnogo lakše nego u Node.js, jer nema potrebe za predinstaliranjem modula (moduli se instaliraju kada se aplikacija prvi put pokrene), datoteka package.json se ne koristi i direktorij node_modules se ne koristi, koristi se po defaultu (moduli su keširani u dijeljenom direktoriju, ali je moguće vratiti prethodno ponašanje pomoću opcije “–node-modules-dir”).

aplikacije zasnovane na NPM zadržava mogućnost korištenja mehanizama kontrole pristupa, Deno izolacija i aktivacija za napredne funkcije koje utiču na sigurnost. Za suprotstavljanje napadima putem upitnih zavisnosti, Deno podrazumevano blokira sve pokušaje pristupa sistemu iz zavisnosti i prikazuje upozorenje o otkrivenim problemima. Na primjer, kada modul pokuša pisati u /usr/bin/, prikazat će se upit za potvrdu za ovu operaciju:

Poboljšanja koja se ne odnose na NPM u novoj verziji uključuju nadogradnju V8 motora za verziju 10.9, automatsko otkrivanje zaključanih fajlova, stabilizacija Deno.bench(), Deno.gid(), Deno.networkInterfaces(), Deno.systemMemoryInfo() i Deno API-ja. .uid(), dodavanjem novog nestabilnog API-ja Deno.Command() za izvršavanje naredbi (univerzalna zamjena za Deno.spawn, Deno.spawnSync i Deno.spawnChild).

Na kraju je vrijedno spomenuti i to Kao i Node.js, Deno koristi V8 JavaScript motor., koji se takođe koristi u pretraživačima zasnovanim na Chromiumu. Istovremeno, Deno nije fork Node.js-a, već novi projekat izgrađen od nule. Kod projekta je objavljen pod MIT licencom, a gotove verzije su dostupne za Linux, Windows i macOS.

Naps zainteresovani da saznaju više o tome, možete se posavjetovati sljedeći link.


Ostavite komentar

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

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  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.