Deno sudah menyokong modul npm

deno npm

Platform ini sedang dibangunkan oleh Ryan Dahl, pencipta Node.js.

Baru-baru ini berita pelepasan versi baharu rangka kerja Deno 1.28 telah dikeluarkan, yang membolehkan pelaksanaan aplikasi JavaScript dan TypeScript yang berdiri sendiri yang boleh digunakan untuk mencipta pengawal yang dijalankan pada pelayan.

Deno dicipta untuk menyediakan pengguna dengan persekitaran yang lebih selamat dan menghapuskan salah tanggapan dalam seni bina Node.js. Untuk meningkatkan keselamatan, pengikatan di sekeliling enjin V8 ditulis dalam Rust, yang menghalang banyak kelemahan yang timbul akibat pengendalian memori peringkat rendah.

Untuk memproses permintaan dalam mod tidak menyekat, rangka kerja Tokio, juga ditulis dalam Rust, digunakan. Tokio membolehkan anda mencipta aplikasi berprestasi tinggi berdasarkan seni bina dipacu peristiwa, menyokong permintaan rangkaian berbilang benang dan pemprosesan secara tidak segerak.

Beberapa ciri Yang utama Deno adalah yang berikut:

  • Sokongan bahasa TypeScript terbina dalam sebagai tambahan kepada JavaScript. Untuk menyemak jenis dan menjana JavaScript, pengkompil TypeScript biasa digunakan, yang membawa kepada penurunan prestasi berbanding penghuraian JavaScript dalam V8.
  • Masa jalan datang dalam bentuk boleh laku yang berdiri sendiri (“deno”). Untuk menjalankan aplikasi menggunakan Deno, anda hanya memuat turun fail boleh laku untuk platform anda, bersaiz kira-kira 30MB, yang tidak mempunyai kebergantungan luaran dan tidak memerlukan sebarang pemasangan khas pada sistem anda.
  • Pemprosesan aplikasi yang cekap bagi permintaan rangkaian melalui HTTP, platform ini direka untuk membina aplikasi rangkaian berprestasi tinggi
  • Keupayaan untuk mencipta aplikasi web universal yang boleh dijalankan dalam Deno dan dalam pelayar web biasa
  • Kehadiran set modul standard, penggunaannya tidak memerlukan pautan kepada kebergantungan luaran.
  • Modul daripada koleksi standard telah diaudit tambahan dan diuji untuk keserasian
  • Pakej ini termasuk sistem pemeriksaan pergantungan terbina dalam (arahan "deno info") dan utiliti pemformatan kod (deno fmt).
  • Semua skrip aplikasi boleh digabungkan menjadi satu fail JavaScript.

Berita utama Deno 1.28

Perubahan utama dalam versi baharu ialah penstabilan keserasian dengan pakej yang dihoskan dalam repositori NPM, apa membolehkan Deno menggunakan lebih daripada 1,3 juta modul dibina untuk platform Node.js. Sebagai contoh, aplikasi berasaskan Deno kini boleh menggunakan modul akses data berterusan seperti Prisma, Mongoose dan MySQL, serta rangka kerja bahagian hadapan seperti React dan Vue.

Sesetengah modul NPM masih tidak serasi dengan Deno, sebagai contoh, disebabkan oleh pengikatan pada persekitaran Node.js tertentu, seperti fail package.json. Ia juga tidak boleh menggunakan arahan "deno compile" dengan modul NPM. Keluaran masa hadapan dirancang untuk menangani ketidakserasian dan batasan ini.

Sistem modul Model modul ECMAScript dan Web API warisan Deno kekal sama, dan skema pemuatan berasaskan URL biasa Deno digunakan untuk mengimport modul NPM.

Menggunakan pakej NPM dalam Deno adalah lebih mudah daripada dalam Node.js, kerana tidak perlu prapasang modul (modul dipasang apabila aplikasi dimulakan buat kali pertama), fail package.json tidak digunakan dan direktori node_modules tidak digunakan, digunakan secara lalai (modul dicache dalam direktori kongsi, tetapi adalah mungkin untuk mengembalikan tingkah laku sebelumnya dengan pilihan "--node-modules-dir").

permohonan berdasarkan NPM mengekalkan keupayaan untuk menggunakan mekanisme kawalan akses, Pengasingan dan pengaktifan Deno untuk fungsi lanjutan yang menjejaskan keselamatan. Untuk melawan serangan melalui kebergantungan yang dipersoalkan, Deno menyekat secara lalai semua percubaan untuk mengakses sistem daripada kebergantungan dan memaparkan amaran tentang masalah yang dikesan. Sebagai contoh, apabila modul cuba menulis ke /usr/bin/, gesaan pengesahan akan dipaparkan untuk operasi ini:

Penambahbaikan berkaitan bukan NPM dalam versi baharu termasuk naik taraf enjin V8 untuk versi 10.9, pengesanan automatik fail dengan kunci, penstabilan Deno.bench(), Deno.gid(), Deno.networkInterfaces(), Deno.systemMemoryInfo( ), dan API Deno. .uid(), menambah API baru yang tidak stabil Deno.Command() untuk melaksanakan arahan (penggantian universal untuk Deno.spawn, Deno.spawnSync dan Deno.spawnChild).

Akhirnya ia patut disebut Seperti Node.js, Deno menggunakan enjin JavaScript V8., yang turut digunakan dalam penyemak imbas berasaskan Chromium. Pada masa yang sama, Deno bukan garpu Node.js, tetapi projek baharu yang dibina dari awal. Kod projek diedarkan di bawah lesen MIT dan terdapat binaan sedia untuk Linux, Windows dan macOS.

Jika anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh berunding pautan berikut.


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.