Kutulutsidwa kwa seva-mbali JavaScript nsanja Node.js 14.0

chinachitika kumasula Ndondomeko .js 14.0, nsanja zoyendetsera mapulogalamu a netiweki mu JavaScript. Node.js 14.0 ndi nthambi yothandizira nthawi yayitali, koma izi zidzangoperekedwa mu October, pambuyo pokhazikika. Node.js 14.0 idzathandizidwa zichitike mpaka Epulo 2023. Kusamalira nthambi yam'mbuyo ya LTS ya Node.js 12.0 kudzakhala mpaka Epulo 2022, ndipo chaka chatha LTS nthambi 10.0 mpaka Epulo 2021. Thandizo la nthambi ya 13.x idzatha mu June chaka chino.

waukulu kuwongolera:

  • Kutha kupanga pa ntchentche kapena pakachitika zochitika zina kwakhazikika malipoti a matenda, zomwe zimawonetsa zochitika zomwe zimathandizira kuzindikira zovuta monga kuwonongeka, kuwonongeka kwa magwiridwe antchito, kutayikira kukumbukira, katundu wolemetsa wa CPU, kutulutsa zolakwika mosayembekezereka, ndi zina zambiri.
  • Adawonjezera thandizo la API yoyeserera Async Local Storage ndikukhazikitsa kalasi ya AsyncLocalStorage, yomwe ingagwiritsidwe ntchito kupanga dziko losasinthika ndi othandizira kutengera kuyimba foni ndi malonjezo. AsyncLocalStorage imakupatsani mwayi wosunga deta pomwe pempho la intaneti likukonzedwa, zomwe zimakukumbutsani za kusungirako kwanuko m'zilankhulo zina.
  • Kuchotsa uthenga wochenjeza woyeserera potsegula zigawo Chithunzi cha ECMAScript 6 kulumikizidwa ndi kutumizidwa kunja pogwiritsa ntchito ziganizo zolowa ndi kutumiza kunja. Panthawi imodzimodziyo, kukhazikitsidwa kwa ma modules a ESM palokha kumakhalabe kuyesa.
  • Injini ya V8 yasinthidwa kukhala mtundu 8.1 (1, 2, 3), zomwe zikuphatikiza kukhathamiritsa kwatsopano kwa magwiridwe antchito ndi mawonekedwe monga woyendetsa watsopano womveka bwino "??" (imabweza opareshoni yakumanja ngati kumanzere kwa operand ndi NULL kapena kusadziwika, ndi mosemphanitsa), "?." cheke kamodzi pa mndandanda wonse wazinthu kapena mafoni (mwachitsanzo, "db?.user?.name?.utali" popanda kuwunika koyambirira), njira ya Intl.DisplayName yopezera mayina am'deralo, ndi zina zotero.
  • Kuwunikiridwa kwa Mitsinje API kunachitika, pofuna kukonza kusasinthasintha kwa Mitsinje APIs ndi kuthetsa kusiyana kwa khalidwe la zigawo zikuluzikulu za Node.js. Mwachitsanzo, machitidwe a http.OutgoingMessage ali pafupi ndi stream.Writable, ndipo net.Socket ndi ofanana ndi stream.Duplex. Njira ya autoDestroy imayikidwa "zoona" mwachisawawa, kutanthauza kuti "_destroy" imatchedwa kumaliza.
  • Adawonjezera thandizo la API yoyeserera WASI (WebAssembly System Interface), kupereka mawonekedwe a mapulogalamu kuti agwirizane mwachindunji ndi makina ogwiritsira ntchito (POSIX API yogwira ntchito ndi mafayilo, sockets, etc.).
  • Zowonjezera zofunika za zomasulira zochepa opanga ndi nsanja: macOS 10.13 (High Sierra), GCC 6, Windows yatsopano 7/2008R2.

Tikumbukenso kuti nsanja ya Node.js itha kugwiritsidwa ntchito pothandizira mbali ya seva pa intaneti komanso kupanga mapulogalamu wamba a kasitomala ndi ma seva. Kukulitsa magwiridwe antchito a Node.js, ambiri a kusonkhanitsa ma modules, momwe mungapezere ma module ndi kukhazikitsidwa kwa ma seva ndi makasitomala HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, ma modules ophatikizira ndi machitidwe osiyanasiyana a intaneti, WebSocket ndi Ajax handlers, zolumikizira ku DBMS (MySQL, PostgreSQL, SQLite) , MongoDB ), injini zama template, injini za CSS, kukhazikitsidwa kwa ma cryptographic algorithms ndi ma authorization systems (OAuth), XML parsers.

Kuti athane ndi zopempha zambiri zofanana, Node.js imagwiritsa ntchito njira yofananira yotsatsira ma code potengera kusatsekereza zochitika komanso kufotokozera oyendetsa mafoni. Njira zothandizidwa zolumikizira ma multiplexing zikuphatikiza epoll, kqueue, /dev/poll, ndikusankha. Laibulale imagwiritsidwa ntchito kulumikiza ma multiplex libu, chomwe ndi superstructure over ufulu pa Unix machitidwe ndi IOCP pa Windows. Laibulale imagwiritsidwa ntchito kupanga dziwe la ulusi libeio, pochita mafunso a DNS mumayendedwe osatsekereza amaphatikizidwa c-anthu. Mafoni onse omwe amayambitsa kutsekereza amachitidwa mkati mwa dziwe la ulusi ndiyeno, monga othandizira ma siginecha, amadutsira zotsatira za ntchito yawo kudzera papaipi yosatchulidwa dzina. Kugwiritsa ntchito JavaScript code kumatsimikiziridwa pogwiritsa ntchito injini yopangidwa ndi Google V8 (Kuphatikiza apo, Microsoft ikupanga mtundu wa Node.js ndi injini ya Chakra-Core).

Pakatikati pake, Node.js ndi yofanana ndi ma frameworks Perl AnyEvent, Makina a Ruby Event, Python Wopotoka и kukhazikitsa zochitika mu Tcl, koma zochitika zomwe zikuchitika mu Node.js zimabisika kwa wopanga mapulogalamu ndipo zimafanana ndi zochitika mu pulogalamu ya intaneti yomwe ikuyenda mu msakatuli. Polemba mapulogalamu a node.js, m'pofunika kuganizira za ndondomeko yoyendetsedwa ndi zochitika, mwachitsanzo, m'malo mochita "var result = db.query("select..");" podikirira kutha kwa ntchito ndi kukonza zotsatira, Node.js imagwiritsa ntchito mfundo ya kuphedwa kosagwirizana, i.e. code imasinthidwa kukhala "db.query ("sankhani..", ntchito (zotsatira) {result processing});", momwe ulamuliro udzadutsa nthawi yomweyo ku code yowonjezera, ndipo zotsatira zafunso zidzasinthidwa pamene deta ikufika. .

Source: opennet.ru

Kuwonjezera ndemanga