Inilabas ang Deno JavaScript Platform 1.16

Inilabas ang platform ng Deno 1.16 JavaScript, na idinisenyo para sa standalone na pagpapatupad (nang hindi gumagamit ng browser) ng mga application na nakasulat sa JavaScript at TypeScript. Ang proyekto ay binuo ng may-akda ng Node.js na si Ryan Dahl. Ang platform code ay nakasulat sa Rust programming language at ipinamamahagi sa ilalim ng lisensya ng MIT. Ang mga ready-made na build ay inihanda para sa Linux, Windows at macOS.

Ang proyekto ay katulad ng platform ng Node.js at, tulad nito, ay gumagamit ng V8 JavaScript engine, gayunpaman, ayon sa may-akda ng Node.js, itinatama nito ang ilang mga depekto sa arkitektura ng hinalinhan nito at naiiba mula dito sa mga sumusunod na nuances :

  • Ang paggamit ng Rust bilang pangunahing wika, na, ayon sa mga developer, ay binabawasan ang panganib ng mga kahinaan na nauugnay sa mababang antas ng pamamahala ng memorya (buffer overflow, use-after-free, atbp.);
  • Hindi ginagamit ni Deno ang npm package manager at package.json, na nag-udyok sa user na mag-install ng mga module sa pamamagitan ng pagtukoy ng URL o path sa module na i-install. Gayunpaman, nag-aalok ang proyekto ng ilang mga kagamitan upang pasimplehin ang trabaho sa mga module ng third-party;
  • Ang mga application ay tumatakbo nang hiwalay sa mga sandbox at walang access sa network, mga variable ng kapaligiran at file system, nang walang tahasang ibinigay na mga pahintulot;
  • Ang arkitektura ay nagbibigay ng kakayahang lumikha ng mga unibersal na web application na maaaring gumana pareho sa sistema ng Deno at sa isang regular na browser;
  • Paggamit ng "ES Modules" at kulang sa nangangailangan() suporta;
  • Anumang mga error sa isang web application na hindi pinangangasiwaan ng programmer ay humantong sa sapilitang pagwawakas nito;
  • Suporta sa TypeScript bilang karagdagan sa JavaScript;
  • Ang buong laki ng handa nang gamitin na platform ay 84 MB (sa isang zip archive - 31 MB) sa anyo ng isang solong maipapatupad na file;
  • Ang kit ay nag-aalok ng isang sistema para sa paglutas ng mga dependency at formatting code;
  • Tumutok sa mga application na may mataas na pagganap.

Pinoproseso ni Dino ang mga kahilingan sa paraang hindi humaharang gamit ang Tokio platform, na idinisenyo para sa pagbuo ng mga application na may mataas na pagganap batay sa arkitektura na hinimok ng kaganapan. Kapansin-pansin din na ang built-in na HTTP server ni Deno ay ipinatupad sa TypeScript sa itaas ng mga native na TCP socket, na may positibong epekto sa pagganap ng mga pagpapatakbo ng network.

Ang bagong bersyon ay nagsasaad:

  • Pag-optimize ng pagganap (4 na patch);
  • Inayos ang higit sa 15 mga error, sa partikular, ang TLS client ay sumusuporta na ngayon sa HTTP/2, ang encoding subsystem ay sumusuporta sa mga karagdagang encoding mark, atbp.;
  • Mahigit sa dalawang dosenang mga inobasyon, kung saan mapapansin natin ang pag-stabilize ng mga dating pagsubok na subsystem na Deno.startTls at Deno.TestDefinition.permissions, pag-update ng V8 JS engine sa bersyon 9.7 at suporta para sa React 17 JSX transformations.

Pinagmulan: opennet.ru

Magdagdag ng komento