幫趣
幫趣
JSON之父:10天趕工出的JavaScript,最好的歸宿就是讓它退役
2022-08-11 02:09:17.0
JavaScript(簡稱 JS) 是一種具有函式優先的輕量級,解釋型或即時編譯型的程式語言。雖然它是作為開發 Web 頁面的指令碼語言而出名,但是它也被用到了很多非瀏覽器環境中。
1995 年由 Netscape 公司的 Brendan Eich,在網景導航者瀏覽器上首次設計實現而成。JavaScript 與 Java 在名字或語法上都有很多相似性,但這兩門程式語言從設計之初就有很大的不同。在語法結構上它又與 C 語言有很多相似。JavaScript 中包含 Java 的最初意圖是:當時 (1993 年)Java 熱火朝天,JavaScript 為迅速壯大自己而令其名字中包含 Java。
從誕生之日到現在,JavaScript 已然成為一門明星語言,使用人數不斷擴大。
根據今年早些時候 StackOverflow 的一項調查結果顯示:
超過 65% 的開發人員使用 JavaScript,遠遠超過排在第二位的 Python
(忽略 HTML、CSS 和 SQL 這些非通用語言)。
根據調查,JavaScript 是世界上最受歡迎的程式語言
但 JSON 之父 Douglas Crockford 卻在最近的一次採訪中表示,JavaScript 已經成爲了進步的障礙:
「
我們現在能做的最好的事情就是讓 JavaScript 退役
。20 年前,我是少數幾個 JavaScript 的倡導者之一。JavaScript 將巢狀函式和動態物件拼湊在一起非常出色。我花了十年的時間試圖糾正它的缺陷,我在 ES5 上取得了小小的成功。但從那以後,人們對進一步擴大該語言產生了濃厚的興趣,而不是改進它。因此,
就像其他化石語言一樣,JavaScript 就成爲了進步的障礙
。我們應該專注於下一種語言,它應該更像 E 語言而不是 JavaScript。」
不過 Crockford 承認替換 JavaScript 存在兩個困難。首先,我們還沒有另一種語言來替換 JavaScript。其次,我們需要所有的瀏覽器製造商都放棄 JavaScript 採用新語言,同時用一個設計良好的介面取代 DOM。而這兩項,都還遠未達到。
前面我們提到,
JavaScript 主要創造者是 Brendan Eich。但他在 1995 年創造這種語言時,只用了 10 天時間
。2018 年,Eich 在 dot.JS 大會上曾經抱怨:當年 5 月我苦熬 10 天,都沒多少休息,終於完成這門語言。2019 年,Eich 告訴美國電腦科學家和學者 Charles Severance,表示自己開始轉向另一種 HTML 程式語言,網頁設計師和程式設計師可以使用,直接嵌入到網頁中,不像 Java 那樣是一種專業語言,你可以執行帶有型別宣告的真實程式碼,但你必須以編譯的方式編寫。很多人被 JavaScript 的名字迷惑了,但在語法上,它與 Java 沒多大關係,而是與 C 語言關係密切。
Eich 稱這項工作是「一項匆忙的工作」,但他也表示「我知道會有錯誤,會有缺陷,所以我把它做成了一種具有可塑性的語言。這使 Web 開發人員能夠使其成為他們想要的樣子。」
Crockford 也指出,隨著效能的提高,JavaScript 已經變得非常複雜,今天一個典型的應用程式包括使用 WebPack、Rollup 或其他繫結器的構建過程,已經與 Eich 最初的概念相去甚遠。
一位開發人員在最近一次關於 Hacker News 的討論中承認道:「JavaScript 在短短几年內迅速流行起來,但其生態系統非常複雜。這一直以來都是個大笑話,即便在全職 JS 開發者中也顯得如此瘋狂,我們沒人能跟上。」
Eich 10 天匆忙趕出來的一門語言,JSON 之父 Douglas Crockford 說要放棄它,到底如何做呢?我們看看網友是如何評價的。
網友的贊同與反駁
對於 Douglas Crockford 的觀點,網友紛紛表達了自己的看法,其中有部分贊同,更有反對。
一位推特網友表示,「我絕對同意他的一點是
需要放棄 DOM,它就是垃圾
。DOM 是 JavaScript 執行慢的罪魁禍首。JS 是不太美觀,但很實用。所以,我不介意。再次強調,DOM 纔是徹頭徹尾的垃圾。」
圖源:@Kris Spookspook
不過,更多網友對 Crockford 的一些說法進行了反駁。
有人表示雖然自己討厭 JavaScript,但
Crockford 嘴上說要放棄 JavaScript,但又沒有替代語言
。如果你認為有些東西不好,最好給出更好的選擇。
還有人表示不確定 Crockford 說的其他化石語言指的哪些,更不確定他說的進步又是什麼。但是,
僅僅爲了進步而進步並不是什麼值得追求的事情
,讓事情保持正常的運轉同樣重要。
其實,
針對 JavaScript 的一些缺點,我們可以找到很好的解決方案
。JavaScript 不夠好?用 TypeScript;執行時太慢?用 Bun;工具太麻煩?用 Bun 或 Vite。其他語言也很好,但對於使用它構建各種東西,並沒有比 JS/TS 更好的 DX 設定。
JSON 之父 Douglas Crockford
Douglas Crockford 是 Web 開發領域最知名的技術權威之一、被 JavaScript 之父 Brendan Eich 稱為 JavaScript 的大宗師(Yoda),擔任過 Yahoo! 資深 JavaScript 架構師和 PayPal 高階 JavaScript 架構師。
Crockford 是暢銷書《How JavaScript Works》和名著《JavaScript: The Good Parts》的作者,並在廣播、學習系統、小型企業系統、辦公自動化、遊戲、互動音樂、多媒體、基於位置的娛樂、社交系統和程式語言領域工作。
Crockford 還是程式語言 Tilton 的發明者,並建立了世界上最受歡迎的資料格式——JSON 資料交換格式。
個人主頁:https://www.crockford.com/about.html
參考連結:
https://developers.slashdot.org/story/22/08/07/2314257/javascript-slows-progress-should-be-retired-argues-json-creator
文章來源:
機器之心
COPYRIGHT ©2020, BANGQU.COM |
Coupons