偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Deno需要做什么才能取代Node.js?

開發(fā) 前端
為什么Deno正式版本1.0發(fā)行時(shí)沒(méi)能成功呢?本文就將深入探討這個(gè)問(wèn)題。

本文轉(zhuǎn)載自公眾號(hào)“讀芯術(shù)”(ID:AI_Discovery)。

[[349330]]

Deno是一個(gè)Javascript/TypeScript的運(yùn)行時(shí),旨在取代Node.js的地位。它擁有廣泛功能,討論度非常高,在Github上有將近68000個(gè)星星:

Deno需要做什么才能取代Node.js?

既然這么受歡迎,那么有人要問(wèn)了:為什么Deno正式版本1.0發(fā)行時(shí)沒(méi)能成功呢?本文就將深入探討這個(gè)問(wèn)題。

什么是Deno

Deno是由Ryan Dahl(也是Node.js的原創(chuàng)者)創(chuàng)建的安全的JavaScript和TypeScript運(yùn)行時(shí),它的創(chuàng)建是為了彌補(bǔ)2009年首次設(shè)計(jì)Node.js時(shí)的疏忽。這種出發(fā)點(diǎn)很有意義,我敢肯定每個(gè)程序員都希望有機(jī)會(huì)重寫他們10年前的代碼。

因此,Deno在Node.js基礎(chǔ)上新增了很多特征,以下是其中一些:

  • Deno默認(rèn)設(shè)定就是安全的。必須通過(guò)選擇才能訪問(wèn)文件系統(tǒng)、網(wǎng)絡(luò)或環(huán)境。
  • Deno為TypeScript的延伸。
  • 外部文件由URL明確引用,沒(méi)有package.json。
  • 導(dǎo)入語(yǔ)句包括擴(kuò)展名為.ts,.tsx,.js,.json的文件。
  • 內(nèi)置的依賴項(xiàng)檢查器和文件格式化工具。

憑借這些功能以及大量的開發(fā)者炒作,Deno于2020年5月正式發(fā)布了1.0版。接著……它撲街了。

為什么Deno沒(méi)有成功?

[[349331]]

圖源:unsplash

Deno似乎擁有致勝的所有要素。它追隨者眾多,功能多樣扎實(shí),創(chuàng)作者經(jīng)驗(yàn)老道等等,但結(jié)果卻未能達(dá)到人們的期望。這是為什么?

我認(rèn)為最好從商業(yè)角度揭秘。很多人都忽略了一點(diǎn):構(gòu)建開源軟件與為用戶構(gòu)建軟件實(shí)在沒(méi)有什么不同。基本的經(jīng)濟(jì)原則——供求關(guān)系,仍然發(fā)揮著重要作用。當(dāng)有人創(chuàng)建一個(gè)新的開源項(xiàng)目時(shí),他們勢(shì)必要與已建立的平臺(tái)競(jìng)爭(zhēng)。鑒于此,不僅要考慮新項(xiàng)目的優(yōu)越性,還必須與現(xiàn)有項(xiàng)目作比較。

對(duì)Deno來(lái)說(shuō),現(xiàn)有的是Node.js,盡管Node.js可能有所不足,但它仍能出色完成任務(wù)。如若Deno推出了Node.js無(wú)法復(fù)制的強(qiáng)大特征,就可能會(huì)改變游戲規(guī)則。但Deno沒(méi)有。

從用戶的角度來(lái)看,Deno具有的只是“次要特征”。它具有更簡(jiǎn)潔的代碼庫(kù),使用了最新最佳的經(jīng)驗(yàn),更加安全,但是這些東西對(duì)用戶來(lái)說(shuō)僅是“特性”,并非產(chǎn)品自身。

你可以做一個(gè)像Gmail一樣的電子郵件客戶端,它應(yīng)更加安全并提速50%,可是用戶仍然不會(huì)轉(zhuǎn)而使用它,即使重新創(chuàng)建書簽用時(shí)不多,人們也覺得不值得。Deno第一擊未中:它具有許多不錯(cuò)的特征,但是沒(méi)有什么能讓用戶放棄Node.js的杰出之處。

Deno的另一個(gè)主要失敗之處是它不支持NPM軟件包。如果Deno能夠支持NPM軟件包,就很可能能夠改變形勢(shì)。Deno支持NPM軟件包將使它們不再像“單獨(dú)的電子郵件客戶端”,更像是對(duì)當(dāng)前客戶端的更好包裝。支持NPM軟件包將大大降低進(jìn)入壁壘。這將為用戶把項(xiàng)目和庫(kù)遷移至Deno提供一個(gè)良好的鋪墊。

這類似于TypeScript的“嚴(yán)格模式”。對(duì)于具有JavaScript強(qiáng)大代碼庫(kù)的用戶,直接轉(zhuǎn)用TypeScript會(huì)降低你幾周內(nèi)梳理錯(cuò)誤消息的效率。

由于TypeScript可以取消嚴(yán)格模式,于是它可以為用戶完全轉(zhuǎn)向使用TypeScript做鋪墊。這使它們的進(jìn)入門檻大幅降低,又助力TypeScript爭(zhēng)得近年來(lái)JavaScript搶占的市場(chǎng)份額。

啟示是什么?

[[349332]]

圖源:unsplash

筆者認(rèn)為這是一個(gè)有趣的案例,例證了更多的商業(yè)方法。給我們帶來(lái)的啟示就是,如果你要發(fā)布新產(chǎn)品,請(qǐng)務(wù)必確保它具有強(qiáng)大的優(yōu)點(diǎn),能夠克服人們拒絕轉(zhuǎn)變現(xiàn)狀的阻力。

Deno具有魅力,但歸根到底,只是多了一系列的小“修復(fù)”,代價(jià)卻是失去了Node.js培育的整個(gè)NPM生態(tài)系統(tǒng)(也曾助它們壯大)。

那么,Deno接下來(lái)何去何從?首先他們得做出決定。要么努力增加Node.js庫(kù)的向后兼容性,要么提供更多好處來(lái)誘使用戶轉(zhuǎn)換平臺(tái)。筆者認(rèn)為更應(yīng)拓展向后兼容,此后將極大改善項(xiàng)目的未來(lái)。

無(wú)論如何,祝Deno團(tuán)隊(duì)好運(yùn),愿好技術(shù)長(zhǎng)存。

 

責(zé)任編輯:趙寧寧 來(lái)源: 今日頭條
相關(guān)推薦

2020-05-20 09:26:59

Node.jsDenoJavaScript

2022-03-04 07:37:16

DenoNode.js項(xiàng)目

2015-10-27 15:50:47

JS框架

2022-11-28 20:01:19

Node.js?Deno

2011-09-02 14:47:48

Node

2022-08-24 08:00:00

Node.isJavaScriptDeno

2021-03-31 10:18:07

Node.jsDeno公司開發(fā)

2018-06-06 09:54:00

javascriptnode.jstypescript

2011-02-25 14:26:18

ProFTPDMySQL

2011-11-10 10:04:20

2011-11-15 10:32:27

2012-05-02 15:56:20

PHP

2013-11-01 09:34:56

Node.js技術(shù)

2022-05-11 09:23:08

CloudflareNode.jsJavaScript

2023-09-26 15:22:02

2015-03-10 10:59:18

Node.js開發(fā)指南基礎(chǔ)介紹

2023-06-29 00:16:45

2023-09-27 16:52:13

2019-05-27 15:30:44

Node.jsJavaScript前端

2025-05-13 07:45:52

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)