Ngemva kweminyaka emibili yentuthuko
Inombolo yenguqulo ebalulekile ihlotshaniswa nokuzinziswa kwama-API ku-Deno namespace, anesibopho sokusebenzelana kwezinhlelo zokusebenza ne-OS. Izixhumanisi zesoftware ezinazo kuze kube manje
Izisusa ezibalulekile zokudala inkundla entsha ye-JavaScript kwakuyisifiso sokuqeda amaphutha omqondo,
main
- Ukucushwa okuzenzakalelayo okugxile ekuvikelekeni. Ukufinyelela ifayela, inethiwekhi, kanye nokufinyelela kokuguquguquka kwemvelo kukhutshazwa ngokuzenzakalela futhi kufanele kunikwe amandla ngokusobala. Izinhlelo zokusebenza ngokuzenzakalela zisebenza ezindaweni ezihlukanisiwe ze-sandbox futhi azikwazi ukufinyelela amakhono esistimu ngaphandle kokunikeza izimvume ezicacile;
- Usekelo olwakhelwe ngaphakathi lwe-TypeScript ngale kwe-JavaScript. I-TypeScript compiler evamile isetshenziselwa ukuhlola izinhlobo futhi ikhiqize i-JavaScript, eholela ekushayeni kokusebenza okuqhathaniswa nokuhlukaniswa kwe-JavaScript ku-V8. Ngokuzayo, sihlela ukulungiselela ukuqaliswa kwethu kwesistimu yokuhlola uhlobo lwe-TypeScript, oluzothuthukisa ukusebenza kokucubungula kwe-TypeScript nge-oda lobukhulu;
- Isikhathi sokusebenza siza ngendlela yefayela elilodwa elisebenzisekayo eliqukethwe ngokwalo (“deno”). Ukusebenzisa izinhlelo zokusebenza usebenzisa i-Deno kwanele
download endaweni yesikhulumi kukhona ifayela elilodwa elisebenzisekayo, elilinganiselwa ku-20 MB ngobukhulu, elingenakho ukuncika kwangaphandle futhi alidingi ukufakwa okukhethekile ohlelweni. Ngaphezu kwalokho, i-deno ayilona uhlelo lokusebenza lwe-monolithic, kodwa iqoqo lamaphakheji e-crate ku-Rust (i-deno_core ,ukugqwala_v8 ), engasetshenziswa ngokwehlukana; - Lapho uqala uhlelo, kanye nokulayisha amamojula, ungasebenzisa ikheli le-URL. Isibonelo, ukuze uqalise uhlelo lwe-welcome.js, ungasebenzisa umyalo othi “deno https://deno.land/std/examples/welcome.js”. Ikhodi evela ezinsizeni zangaphandle iyalandwa futhi ifakwe kunqolobane kusistimu yendawo, kodwa ayibuyekezwa ngokuzenzakalelayo (ukubuyekeza kudinga ukusebenzisa ngokusobala uhlelo lokusebenza ngefulegi elithi “--reload”);
- Ukucubungula okusebenzayo kwezicelo zenethiwekhi nge-HTTP ezinhlelweni zokusebenza; inkundla yakhelwe ukudala izinhlelo zokusebenza zenethiwekhi ezisebenza kahle;
- Ikhono lokudala izinhlelo zokusebenza zewebhu zomhlaba wonke ezingenziwa kokubili ku-Deno kanye nesiphequluli sewebhu esivamile;
- Ukutholakala
isethi ejwayelekile yamamojula , ukusetshenziswa okungadingi ukubophezela kokuncika kwangaphandle. Amamojula asuka eqoqweni elijwayelekile ahlolwe okwengeziwe nokuhambisana nokuhlolwa; - Ngaphezu kwesikhathi sokusebenza, inkundla ye-Deno iphinde isebenze njengomphathi wephakheji futhi ikuvumela ukuthi ufinyelele amamojula nge-URL ngaphakathi kwekhodi. Isibonelo, ukuze ulayishe imojuli, ungacacisa kukhodi ethi "ngenisa * njengelogi ukusuka ku-"https://deno.land/std/log/mod.ts". Amafayela alandwe eziphakelini zangaphandle nge-URL afakwe kunqolobane. Ukubophezela kuzinguqulo zemojula kunqunywa ngokucacisa izinombolo zenguqulo ngaphakathi kwe-URL, isibonelo, “https://unpkg.com/[i-imeyili ivikelwe]/dist/liltest.js";
- Isakhiwo sihlanganisa uhlelo oludidiyelwe lokuhlola ukuncika (umyalo “we-deno info”) kanye nensizakalo yokufometha ikhodi (deno fmt);
- Zonke izikripthi zohlelo lokusebenza zingahlanganiswa zibe ifayela elilodwa le-JavaScript.
Umehluko ku-Node.js:
- I-Deno ayisebenzisi imenenja yephakheji ye-npm
futhi ayiboshelwe kumakhosombe, amamojula aqondiswa nge-URL noma ngendlela yefayela, futhi amamojula ngokwawo angafakwa kunoma iyiphi iwebhusayithi; - I-Deno ayisebenzisi i-"package.json" ukuze ichaze amamojula;
- Umehluko we-API, zonke izenzo ze-asynchronous ku-Deno zibuyisela isithembiso;
- I-Deno idinga incazelo ecacile yazo zonke izimvume ezidingekayo zamafayela, inethiwekhi nokuguquguquka kwendawo;
- Wonke amaphutha anganikezwanga izibambi aholela ekunqanyulweni kwesicelo;
- I-Deno isebenzisa isistimu yemojula ye-ECMAScript futhi ayisekeli idinga();
- Iseva ye-HTTP eyakhelwe ngaphakathi ye-Deno ibhalwe ku-TypeScript futhi isebenza phezu kwamasokhethi omdabu e-TCP, kuyilapho iseva ye-Node.js HTTP ibhalwe ngo-C futhi inikeza ukubophezela kwe-JavaScript. Abathuthukisi beDeno bagxile ekwandiseni sonke isendlalelo sesokhethi ye-TCP futhi banikeze isixhumi esibonakalayo esijwayelekile. Iseva ye-Deno HTTP ihlinzeka ngokuphuma okuphansi kodwa iqinisekisa ukubambezeleka okubikezelwe okuphansi. Isibonelo, ekuhlolweni, uhlelo lokusebenza olulula olusekelwe kuseva ye-Deno HTTP lukwazile ukucubungula izicelo eziyizinkulungwane ezingu-25 ngomzuzwana ngokubambezeleka okukhulu kwama-millisecond angu-1.3. Ku-Node.js, isicelo esifanayo sicubungule izicelo eziyizinkulungwane ezingu-34 ngomzuzwana, kodwa ukubambezeleka kwakusukela ku-2 kanye ne-300 millisecond.
- I-Deno ayihambisani namaphakheji we-Node.js (NPM), kodwa ithuthukiswa ngokuhlukana
interlayer ukuze ihambisane nomtapo wezincwadi ojwayelekile we-Node.js, njengoba ithuthuka, izicelo eziningi ezibhalelwe i-Node.js zizokwazi ukusebenza ku-Deno.
Source: opennet.ru