Dhinaca Server-ka JavaScript Node.js 14.0 sii deynta

dhacay sii daayo Node. 14.0,platforms loogu talagalay socodsiinta codsiyada shabakada ee JavaScript. Node.js 14.0 waa laan taageero muddo-dheer ah, laakiin heerkan waxa la meelayn doonaa oo keliya Oktoobar, ka dib xasilinta. Node.js 14.0 waa la taageeri doonaa la fuliyo ilaa Abriil 2023. Dayactirka laantii hore ee LTS ee Node.js 12.0 waxa ay socon doontaa ilaa Abriil 2022, iyo sanadka ka horeeya laanta LTS ee 10.0 ilaa Abriil 2021. Taageerada laanta diyaarinta 13.x waxay dhamaan doontaa bisha Juun ee sanadkan.

Main horumar:

  • Awoodda wax-soo-saarka duulista ama marka ay dhacdo dhacdooyinka qaarkood waa la dejiyay warbixinnada ogaanshaha, kuwaas oo soo bandhiga dhacdooyinka caawiya ogaanshaha dhibaatooyinka sida shilalka, hoos u dhaca waxqabadka, daadinta xusuusta, culeyska CPU ee culus, soo saarida qaladka lama filaanka ah, iwm.
  • Taageerada tijaabada API ee lagu daray Kaydinta Maxaliga Async iyada oo la fulinayo fasalka AsyncLocalStorage, kaas oo loo isticmaali karo in lagu abuuro xaalad isku mid ah oo leh maamulayaal ku salaysan wicitaanada dib-u-warshadaynta iyo ballanqaadyada. AsyncLocalStorage waxa ay kuu ogolaataa in aad kaydiso xogta inta codsiga webka laga baaraandegayo, taas oo xasuusinaysa kaydinta dunta-maxali ah ee luuqadaha kale.
  • Fariinta digniinta ah ee meesha laga saaray ee ku saabsan sifada tijaabada ah marka la soo shubayo modules ECMAScript 6 isku xidhka iyo dhoofinta iyadoo la isticmaalayo bayaannada soo dejinta iyo dhoofinta. Isla mar ahaantaana, hirgelinta modules ESM lafteeda ayaa weli ah tijaabo.
  • Matoorka V8 oo la cusboonaysiiyay nooca 8.1 (1, 2, 3), oo ay ku jiraan hagaajinta waxqabadka cusub iyo sifooyinka sida hawlwadeenka isku xidhka macquulka ah ee cusub "??" (waxay soo celisaa operand-ka midig haddii hawsha bidixdu tahay NULL ama aan la qeexin, iyo lidkeeda), hawlwadeenka "?." hubin hal mar ah ee dhammaan silsiladaha guryaha ama wicitaanada (tusaale, "db?.user?.name?.. dhererka" iyada oo aan la hubin hordhac ah), habka Intl.DisplayName ee lagu helo magacyada gudaha, iwm.
  • Dib u eegis lagu sameeyay Streams API-ga ayaa la sameeyay, iyada oo looga dan lahaa in lagu wanaajiyo joogtaynta Streams APIs iyo in meesha laga saaro kala duwanaanshaha hab-dhaqanka qaybaha aasaasiga ah ee Node.js. Tusaale ahaan, hab-dhaqanka http.OutgoingMessage wuxuu ku dhow yahay qulqulka.Writable, iyo net.Socket waxay la mid tahay stream.Duplex. Xulashada autoDestroy waxaa loo dejiyay inay "run tahay" asal ahaan, taasoo macnaheedu yahay wac "_destroy" marka la dhammeeyo.
  • Taageerada tijaabada API ee lagu daray WASI (Interface System WebAssembly), bixinta is-dhexgalka software ee isdhexgalka tooska ah ee nidaamka hawlgalka (POSIX API ee la shaqeynta faylasha, saldhigyada, iwm.).
  • Shuruudaha la kordhiyey noocyada ugu yar compilers iyo dhufto ee: macOS 10.13 (High Sierra), GCC 6, Windows ka cusub 7/2008R2.

Aynu xusuusanno in nidaamka Node.js loo isticmaali karo labadaba taageerada server-ka ee codsiyada Webka iyo abuurista macaamiisha caadiga ah iyo barnaamijyada shabakada serverka. Si loo balaadhiyo shaqada codsiyada Node.js, tiro badan oo ah ururinta modules, kaas oo aad ka heli karto modules leh hirgelinta server-yada iyo macaamiisha HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, modules for integration with web frameworks kala duwan, WebSocket iyo Ajax handlers, xirayaasha DBMS (MySQL, PostgreSQL, SQLite). , MongoDB), matoorada template, matoorada CSS, hirgelinta algorithms cryptographic iyo nidaamyada oggolaanshaha (OAuth), baarayaasha XML.

Si loo maareeyo tiro badan oo codsiyo isbarbar socda, Node.js waxay isticmaashaa qaabka fulinta koodka asynchronous kaas oo ku salaysan habayn la'aanta dhacdada iyo qeexida kuwa gacanta ku haya soo celinta wicitaanka. Hababka la taageeray ee isku xirka isku dhufashada waxaa ka mid ah epoll, kqueue, /dev/poll, oo dooro. Maktabadu waxa loo isticmaalaa in lagu kordhiyo isku xidhka liib, kaas oo ah dhisme sare oo dhamaaday xorriyadda Nidaamyada Unix iyo in ka badan IOCP ee Windows. Maktabadu waxa loo isticmaalaa in lagu sameeyo barkad dun ah xorriyad, si loo fuliyo weydiimaha DNS qaab aan xannibin waa la isku daray c-arees. Dhammaan wicitaanada nidaamka ee sababa xannibaadda waxaa lagu fuliyaa barkada dunta ka dibna, sida kuwa gacanta ku haya calaamadaha, waxay natiijada shaqadooda dib ugu soo celiyaan tuubo aan la magacaabin. Fulinta koodka JavaScript waxaa lagu hubiyaa isticmaalka matoorka ay samaysay Google V8 (Intaa waxaa dheer, Microsoft waxay horumarinaysaa nooca Node.js oo leh mashiinka Chakra-Core).

Xuddunta, Node.js waxay la mid tahay qaab-dhismeedka Perl Any Event, Ruby Event Machine, Python qalloocan ΠΈ hirgelinta dhacdooyinka Tcl, laakiin dhacdada loop ee Node.js way ka qarsoon tahay horumariyaha waxayna u egtahay maaraynta dhacdada ee arjiga shabakada ku shaqeeya browserka. Markaad qorto codsiyada node.js, waxaa lagama maarmaan ah in la tixgeliyo waxyaabaha gaarka ah ee barnaamijka socodsiinta dhacdada, tusaale ahaan, halkii laga samayn lahaa "var result = db.query("dooro..");" iyada oo la sugayo dhamaystirka shaqada iyo habaynta ku xigta ee natiijooyinka, Node.js waxay isticmaashaa mabda'a fulinta asynchronous, i.e. koodka waxa loo beddelaa "db.query("dooro..", function (natiijada) {natiijooyinka habaynta});", kaas oo koontaroolku isla markiiba u gudbi doono koodka dheeraadka ah, natiijada waydiintana waxaa laga baaraandegi doonaa marka xogtu timaado. .

Source: opennet.ru

Add a comment