Server-sisi JavaScript Node.js 16.0 release

Node.js 16.0 dirilis, platform pikeun ngajalankeun aplikasi jaringan dina JavaScript. Node.js 16.0 digolongkeun salaku cabang rojongan jangka panjang, tapi status ieu bakal ditugaskeun ngan dina Oktober, sanggeus stabilisasi. Node.js 16.0 bakal dirojong dugi ka April 2023. Pangropéa cabang LTS sateuacana tina Node.js 14.0 bakal dugi ka April 2023, sareng sataun sateuacan cabang LTS terakhir 12.0 dugi ka April 2022. Dukungan pikeun cabang 10.0 LTS bakal dileungitkeun dina 10 dinten.

Perbaikan utama:

  • Mesin V8 parantos diropéa kana vérsi 9.0 (Node.js 15 nganggo sékrési 8.6), anu ngamungkinkeun palaksanaan fitur sapertos sipat "indeks" pikeun éksprési biasa (ngawengku susunan sareng posisi awal sareng tungtung grup patandingan) , métode Atomics di Node.js 16 .waitAsync (versi async of Atomics.wait), rojongan pikeun ngagunakeun kecap konci await dina modul tingkat luhur. Telepon fungsi parantos digancangan dina kaayaan dimana jumlah argumen anu diliwatan henteu pakait sareng parameter anu ditetepkeun dina fungsina.
  • Timers Jangji API geus stabilized, nyadiakeun hiji set alternatif fungsi pikeun gawé bareng timers nu balik objék jangji salaku kaluaran, nu eliminates butuh pamakéan util.promisify (). impor {setTimeout} ti 'timers / janji'; fungsi async ngajalankeun () {await setTimeout (5000); console.log('Halo, Dunya!'); } ngajalankeun ();
  • Palaksanaan ékspérimén tina Web Crypto API geus ditambahkeun, dirancang pikeun ngalakukeun operasi kriptografi dasar di sisi aplikasi wéb, kayaning manipulasi hashes cryptographic, generating jeung verifying tanda tangan digital, encoding jeung decoding data ngagunakeun rupa métode enkripsi, sarta ngahasilkeun cryptographically aman. angka acak. API ogé nyayogikeun fungsi pikeun ngahasilkeun sareng ngatur konci.
  • N-API (API pikeun ngembangkeun tambihan) parantos diropéa kana versi 8.
  • Transisi kana sékrési anyar manajer pakét NPM 7.10 parantos dilakukeun.
  • Stabilized palaksanaan kelas AbortController, nu dumasar kana AbortController Web API tur ngamungkinkeun sinyal bisa dibatalkeun dina API dumasar-Janji dipilih.
  • Rojongan pikeun versi katilu tina format Peta Sumber, dipaké pikeun ngabandingkeun dihasilkeun, modul olahan atawa rangkep jeung kode sumber aslina, geus stabilized.
  • Pikeun kasaluyuan sareng API Wéb warisan, métode buffer.atob(data) jeung buffer.btoa(data) geus ditambahkeun.
  • Wangunan rakitan pikeun alat Apple anyar anu dilengkepan chip M1 ARM parantos dimimitian.
  • Dina platform Linux, syarat vérsi kompiler parantos diangkat ka GCC 8.3.

Hayu urang émut yén platform Node.js tiasa dianggo pikeun pangrojong sisi-server pikeun aplikasi wéb sareng pikeun nyiptakeun program jaringan klien sareng server biasa. Pikeun dilegakeun pungsionalitas aplikasi pikeun Node.js, kumpulan modul anu ageung parantos disiapkeun, dimana anjeun tiasa mendakan modul kalayan palaksanaan HTTP, SMTP, XMPP, DNS, FTP, IMAP, server POP3 sareng klien, modul pikeun integrasi. kalawan rupa web frameworks, WebSocket na AJAX pawang , panyambungna ka DBMS (MySQL, PostgreSQL, SQLite, MongoDB), mesin template, mesin CSS, palaksanaan algoritma cryptographic sarta sistem otorisasina (OAuth), XML parsers.

Pikeun mastikeun ngolah sajumlah ageung pamundut paralel, Node.js nganggo modél palaksanaan kode Asynchronous dumasar kana penanganan acara non-blocking sareng definisi panangan callback. Métode anu dirojong pikeun sambungan multiplexing nyaéta epoll, kqueue, / dev / poll, sareng pilih. Pikeun sambungan multiplexing, perpustakaan libuv dipaké, nu mangrupa tambihan-on pikeun libev on sistem Unix sarta IOCP on Windows. Perpustakaan libeio dipaké pikeun nyieun kolam renang thread, sarta c-ares ieu terpadu pikeun ngalakukeun queries DNS dina modeu non-blocking. Sadaya panggero sistem anu nyababkeun blocking dieksekusi di jero kolam renang teras, sapertos panangan sinyal, nransferkeun hasil padamelanna deui ngaliwatan pipa anu henteu namina (pipa). Eksekusi kode JavaScript disayogikeun ku ngagunakeun mesin V8 anu dikembangkeun ku Google (sajaba ti éta, Microsoft ngembangkeun versi Node.js sareng mesin Chakra-Core).

Intina, Node.js sami sareng Perl AnyEvent, Mesin Acara Ruby, kerangka Python Twisted, sareng palaksanaan acara Tcl, tapi loop acara di Node.js disumputkeun tina pamekar sareng nyarupaan penanganan acara dina aplikasi wéb anu ngajalankeun. dina browser. Nalika nulis aplikasi pikeun node.js, Anjeun kudu mertimbangkeun spésifik program acara-disetir, contona, tinimbang ngalakukeun "var hasil = db.query ("pilih ..");" kalayan ngantosan parantosan padamelan sareng ngolah hasil salajengna, Node.js nganggo prinsip palaksanaan asinkron, nyaéta. kode ieu ngajanggélék jadi "db.query ("pilih ..", fungsi (hasil) {prosés hasil});", nu kontrol bakal langsung ngalirkeun kana kode salajengna, sarta hasil query bakal diolah sakumaha data datang.

Salaku tambahan, éta tiasa dicatet yén perusahaan Deno, diadegkeun ku panyipta Node.js pikeun ngembangkeun platform Deno generasi salajengna, nampi investasi $ 4.9 juta. Dina tujuanana, Deno mirip sareng Node.js, tapi nyobian ngaleungitkeun kasalahan konseptual anu dilakukeun dina arsitektur Node.js sareng nyayogikeun pangguna lingkungan anu langkung aman. Perhatikeun yén solusi bisnis Deno bakal diwangun dina produk anu lengkep kabuka, sareng modél Open Core kalayan fungsionalitas anu dibayar anu misah dianggap henteu katampi pikeun platform Deno.

sumber: opennet.ru

Tambahkeun komentar