Deno團隊發布可穩定相容NPM套件的Deno 1.28,這是一個重要的功能更新,因為這代表Deno開發者將可以使用超過130萬個NPM套件,使用熟悉的持久資料模組,像是Prisma、Mongoose和MySQL,甚至是前端框架React、Vue來建構應用程式。

由於Deno是為了解決Node.js技術債,由Node.js之父Ryan Dahl重新創建的JavaScript、TypeScript執行環境,因此社群在兩者的相容性上存在一些意見分歧,但是開發者仍希望可以有一個簡單的方法,能夠方便地使用NPM套件。

Deno團隊認為,現代JavaScript應該使用網頁標準API和ES模組建構,因此這個版本也會遵循這個想法,透過URL以標準方式匯入模組,Deno將繼續朝向與瀏覽器相容的方向,開發者之後便可使用Web API,像是Fetch、Request和Response來操作套件。

雖然NPM套件方便使用且易於共享,但是安裝和執行相依項目不用經過檢查的方式,使Node和NPM容易受到軟體供應鏈攻擊,透過域名仿冒、社交工程和各種攻擊,當攻擊者上傳惡意模組,被其他開發者安裝到生產應用程式中,就可能危及數百萬用戶。

Deno預設安全方法不允許不受信任的第三方程式碼,存取用戶的整個系統,並且會在相依項目存取系統時,進行限制並且通知使用者。

Deno團隊正想辦法讓更多的NPM套件與Deno相容,有一些套件因為腳本等其他邊緣狀況,現在仍無法使用,Deno團隊想透過改進Node相容層,使其能與Node的運作方式相同。另外,Deno中有一些子命令,還無法用於NPM套件中,這部分Deno團隊也正在解決當中。

熱門新聞

Advertisement