JavaScript如此受歡迎的4個原因
JavaScript 之所以能在編程語言中名列前茅,是有充分的理由的。
如 GitHub 的 The State of the Octoverse 報告的這張圖所示,如果按 GitHub 上項目的貢獻(xiàn)者數(shù)量統(tǒng)計,JavaScript 一直是最受歡迎的編程語言。
熱門語言,根據(jù)《The State of the Octoverse》(©2019,GitHub Corp)
在本系列的 上一篇 中,我們深入了解了 JavaScript 的歷史。在這篇文章中,我將分享它如此受歡迎的四個原因。
1、JavaScript 適合初級、中級和高級開發(fā)人員
JavaScript 不需要任何環(huán)境設(shè)置,只要打開瀏覽器,比如 Chrome 瀏覽器,導(dǎo)航到開發(fā)者工具,就可以開始編碼。編寫一個 “Hello World” 的程序,就這么簡單:
console.log("Hello World");
JavaScript 的靈活性最適合中級開發(fā)人員。該語言通過讓開發(fā)人員專注于解決問題來幫助你完成任務(wù)。開發(fā)者可以混合使用插件和自己的代碼片段來讓一個應(yīng)用程序工作。
雖然 JavaScript 比較容易上手,但它也并不是一下子就能掌握的。如果你想達(dá)到高級水平,這里有一些你需要了解的概念:
- JavaScript 的多范式特性: JavaScript 同時支持函數(shù)式編程和面向?qū)ο缶幊蹋∣OP)。
- 在 JavaScript 中應(yīng)用設(shè)計模式: 模型-視圖-*(MV*)設(shè)計模式一直是最流行的模式之一,并促成了多個現(xiàn)代框架的發(fā)展。
- 帶原型鏈的繼承: JavaScript 由于其動態(tài)的特性,無法實現(xiàn)傳統(tǒng)的 Java 基于類的模式下的 OOP。JavaScript 中的 OOP 是通過原型繼承模型實現(xiàn)的。
- 閉包: 閉包可以從內(nèi)部函數(shù)中訪問外部函數(shù)的作用域。
- 柯里化: 柯里化是函數(shù)的一種轉(zhuǎn)換,它將函數(shù)從
f(a, b, c)
的調(diào)用形式轉(zhuǎn)換為f(a)(b)(c)
調(diào)用形式。 - Promises 和 Observables: 這些可以幫助你處理異步函數(shù)。
- TypeScript: 在 JavaScript 中添加了靜態(tài)類型。
2、全平臺
JavaScript 可以在任何地方運行,包括:
- 手機、平板電腦和筆記本電腦等設(shè)備。
- 在客戶端和服務(wù)器端。
這種在任何地方都能運行的能力使 JavaScript 成為一種通用語言。
3、開放標(biāo)準(zhǔn)和社區(qū)
ECMAScript 是 JavaScript 的標(biāo)準(zhǔn)化版本,也是一種開放的標(biāo)準(zhǔn)語言。公司可以使用 ECMAScript 來創(chuàng)建 JavaScript 的實現(xiàn)。根據(jù)維基百科,“ECMAScript 引擎是執(zhí)行以 ECMAScript 語言標(biāo)準(zhǔn)編寫的源代碼(例如,JavaScript)的程序”。最流行的引擎 V8 和 SpiderMonkey 是開源項目。
JavaScript 已經(jīng)存在了 25 年,背后有一個龐大的社區(qū)。開發(fā)者們簡直目不暇接,社區(qū)已經(jīng)構(gòu)建了如此多的插件和框架,以至于創(chuàng)造了“框架疲勞”這個詞。
4、現(xiàn)代框架
現(xiàn)代框架如 React、Angular 和 Vue.js 已經(jīng)穩(wěn)定下來,并且正在進(jìn)行優(yōu)化以獲得更好的性能。大多數(shù)框架對開發(fā)者非常友好,有良好的社區(qū)支持。
未來
JavaScript 將長期存在。全棧開發(fā)和現(xiàn)代前端框架繼續(xù)幫助 JavaScript 鞏固其作為最受歡迎的編程語言之一的地位。
JavaScript 的下一波可能會將焦點放在。
- Deno: JavaScript 的現(xiàn)代安全運行時。
- 網(wǎng)絡(luò)組件: 可重復(fù)使用的自定義元素。
- 與 AI 和 ML 的整合: 像 Supernova 和 BAYOU 這樣的項目在將 JavaScript 與人工智能和機器學(xué)習(xí)整合方面取得了實質(zhì)性的突破。