Deno već podržava NPM module

deno npm

Platformu razvija Ryan Dahl, kreator Node.js.

nedavno objavljena je vijest o izlasku nove verzije okvira Deno 1.28, koji omogućuje izvođenje samostalnih JavaScript i TypeScript aplikacija koje se mogu koristiti za stvaranje kontrolera koji se pokreću na poslužitelju.

Deno je stvoren kako bi korisnicima pružio sigurnije okruženje i eliminirati zablude u Node.js arhitekturi. Kako bi se poboljšala sigurnost, vezivanje oko V8 motora napisano je u Rustu, što sprječava mnoge ranjivosti koje nastaju zbog rukovanja memorijom niske razine.

Za obradu zahtjeva u načinu rada bez blokiranja koristi se okvir Tokio, također napisan u Rustu. Tokio vam omogućuje stvaranje visokoučinkovitih aplikacija temeljenih na arhitekturi vođenoj događajima, podržavajući multithreading i asinkronu obradu mrežnih zahtjeva.

Neke od značajki Glavni Deno su sljedeći:

  • Ugrađena podrška za jezik TypeScript uz JavaScript. Za provjeru tipova i generiranje JavaScripta koristi se regularni TypeScript kompilator, što dovodi do pada performansi u usporedbi s JavaScript raščlanjivanjem u V8.
  • Vrijeme izvođenja dolazi u obliku jedne samostalne izvršne datoteke ("deno"). Za pokretanje aplikacija koristeći Deno, jednostavno preuzimate izvršnu datoteku za svoju platformu, veličine oko 30 MB, koja nema vanjskih ovisnosti i ne zahtijeva nikakvu posebnu instalaciju na vašem sustavu.
  • Učinkovita aplikacijska obrada mrežnih zahtjeva putem HTTP-a, platforma je dizajnirana za izgradnju mrežnih aplikacija visokih performansi
  • Sposobnost stvaranja univerzalnih web aplikacija koje se mogu izvoditi iu Denou iu običnom web pregledniku
  • Prisutnost standardnog skupa modula, čija upotreba ne zahtijeva povezivanje s vanjskim ovisnostima.
  • Moduli iz standardne kolekcije dodatno su revidirani i testirani na kompatibilnost
  • Paket uključuje ugrađeni sustav inspekcije zavisnosti (naredba "deno info") i uslužni program za formatiranje koda (deno fmt).
  • Sve skripte aplikacije mogu se kombinirati u jednu JavaScript datoteku.

Glavna vijest Denoa 1.28

Ključna promjena u novoj verziji je stabilizacija kompatibilnosti s paketima koji se nalaze u NPM repozitoriju, što omogućuje Denu korištenje više od 1,3 milijuna modula izgrađen za Node.js platformu. Na primjer, aplikacije koje se temelje na Denu sada mogu koristiti postojane 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 još uvijek nisu kompatibilni s Denom, na primjer, zbog vezanja na određena okruženja Node.js, kao što je datoteka package.json. Također nije moguće koristiti naredbu "deno compile" s NPM modulima. Buduća izdanja planirana su za rješavanje ovih nekompatibilnosti i ograničenja.

Sustav modula Deno naslijeđeni model ECMAScript i Web API modula ostaju isti, a Denova poznata shema učitavanja temeljena na URL-u koristi se za uvoz NPM modula.

Korištenje NPM paketa u Denu puno je lakše nego u Node.js, jer nema potrebe za predinstalacijom modula (moduli se instaliraju kada se aplikacija pokrene prvi put), datoteka package.json se ne koristi i direktorij node_modules se ne koristi, koristi se prema zadanim postavkama (moduli se pohranjuju u predmemoriju u zajedničkom direktoriju, ali moguće je vratiti prethodno ponašanje opcijom "--node-modules-dir").

aplikacije temeljene na NPM zadržava mogućnost korištenja mehanizama kontrole pristupa, Deno izolacija i aktivacija za napredne funkcije koje utječu na sigurnost. Za suprotstavljanje napadima putem upitnih ovisnosti, Deno prema zadanim postavkama blokira sve pokušaje pristupa sustavu iz ovisnosti 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 nisu povezana s NPM-om u novoj verziji uključuju nadogradnju motora V8 za verziju 10.9, automatsko otkrivanje datoteka s bravama, 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 mehanizam., koji se također koristi u preglednicima temeljenim na Chromiumu. U isto vrijeme, Deno nije fork Node.js, već novi projekt izgrađen od nule. Kôd projekta distribuira se pod licencom MIT i postoje gotove verzije za Linux, Windows i macOS.

Naps zainteresirani za saznanje više o tome, možete se posavjetovati sljedeći link.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  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 obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.