每個人一生中至少有一次用 JavaScript 寫過程式碼。有些人說他們喜歡它,有些人則說他們不喜歡。這只是一封小小的“信”,寫給那些對 JS 生態系統有遙遠感情的人們,無論好壞。
在開始之前我們需要了解 Javascript 的歷史。 Javascript 不是一種語言,而是生態系。 Java 或 C 是一種語言 Javascript 不是,ECMAScript 是該語言的實際名稱。當我們責怪 Javascript 時,我們實際上是在責怪生態系統。
程式設計涉及很多事情,如果我們將程式設計想像成一個大球體,那麼 Web 佔據了最大的部分。
當我們談論程式設計時,80%都是與網路相關的技術。這就是為什麼 Javascript 在 1995 年開始純粹作為一種 Web 語言,並在 1997 年得到 IE4 支援。因此,為了我們的理解,我們需要知道 Javascript 從來就不是為了在伺服器上使用而設計的。 Netscape 實際上是第一個支援 Javascript 的瀏覽器,它使用 Mocha 作為 Javascript 引擎,但直到 V8 之前的所有內容都還不夠好。
隨著需求的增長,人們開始嘗試讓Javascript 變得更強大、更快,但Google 團隊創造了奇蹟,實際上讓Javascript 變得足夠快,不僅對客戶端來說足夠快,而且隨著Ryan Dahl 引進V8 和Node.js,Javascript 開始了也可以在伺服器上使用。
其他語言,如 C 或 Java,它們旨在處於機器級別並創建較低級別的程式。要了解伺服器上的 Javascript 是多麼神奇,想像一下嘗試將 Java 放在客戶端上。該語言的目的不是用於與 DOM 和 Web API 交互,因此需要進行許多技巧。
ECMAScript 1 是用於 Web 瀏覽器的語言,旨在僅在其中運行。如果我們將其表現歸咎於語言,我們需要知道它不是語言,而是語言背後的引擎
差不多十年後的 2009 年,隨著 ECMAScript 需求的成長,ES5 終於出現了。這就是大繁榮發生的地方。實際上,ECMAScript 語言的用途遠不止於簡單的前端應用程式。僅僅幾年後,React 和其他框架開始出現在地平線上,不僅適用於前端,也適用於後端以及 Express.js 的引入
Javascript 必須有自由,因為前端不像後端開發那樣嚴格和嚴格,React 和之前的客戶端繁榮的藝術需求創建了一個相當寬鬆的生態系統,沒有太多規則和限制。
如果其他語言在伺服器上已經存在了十多年了,Javascript 想要進入,由於其簡單的語法性質,很容易使用該語言,而且前端和後端開發使用相同的程式語言很方便.
這是我想談的事情。在 2009 年 Shopify 正式推出其平台之前,我們與後端服務沒有太多互動。 Javascript 的壞本質對於當時的Web 來說已經足夠好了,而且當時存在的少數大型Web 平台,使用PHP 作為後端,像Facebook 這樣的前端,如果他們有更多的需求,他們就使用Java 作為後端。與 API 的互動性很差,需要進行一些更改。
Node.js 幫助開發人員做他們想做的事,使 Web 成為無縫的開發體驗,而不必為同一組功能使用不同的語言。最初 Nodejs 的效能很差,擴充功能很困難,需要發生一些事情。
Javascript 有很多問題需要解決。它必須解決的第一個問題是效能,而 Nodejs 也提高了效能。
一個程式碼庫可以解決所有問題,但可擴充性無法滿足業界標準。類型安全是必須的,就像 Facebook 創建了 Hack,微軟引入了 Typescript。
Javascript解決了效能問題,它可能不如Go或Rust快,但也不是必須的。您不需要 Web 標準的瘋狂效能,如果需要,只需使用 Go 或 Rust 建立一項服務即可。讓我告訴你,我們所知道的網路的核心是 PHP 和 Ruby。它們比 Javascript 慢得多,而且資源消耗更大。
Javascript 解決了類型安全問題,因此可以在更大的專案中使用,但最後一個問題一直困擾著 Javascript,直到幾天前我們才取得了重大突破。
因為 Javascript 不是一種語言,而是生態系統,新功能和工具不是以該語言建構的,而是圍繞著它建構的。您最終需要 20 個設定檔來運行一個後端有 3 個端點的小型 SPA 應用程式。我們需要的改變是將所有內容捆綁在一個東西中。
將 ECMAScript、類型、Linting、安全性和格式放在一個套件中。因為現在你不僅迷失在依賴地獄中,而且編碼也很困難,因為沒有關於如何做事的單一標準。其他語言,如 Java、Ruby、Go、Rust 或 Perl,一切都在語言障礙之內。
Ryan Dahl 介紹了 Deno,Deno 開始做的就是將所有東西綁在一起。這是非常有前途的。
Typescript 現在的效能、函式庫數量、圍繞語言和資源存在的 SDK,包括 Deno 所做的承諾,它將接管整個 Web 產業。
想像一個世界,所有這些檔案及其指令都捆綁在一個 Javascript 引擎中。
eslintrc.json
tsconfig.json
vite.config.js
package.json
postcss.config.js
.prettierrc
ecosystem.config.js
.哈士奇
根據我的淺薄理解,Javascript 非常接近成為 Web 領域的明智選擇,只需 3-4 年。您想要建立微服務、微前端、整體架構、擴展到每秒 5K 請求或只是創建一個簡單的 SPA,Javascript 將是唯一的解決方案。
給 Javascript 一些時間,PHP、Ruby 或 Go 等 Web 替代方案將會倒退。因為現在每個人都有反對 Javascript 的合理論點,但未來還是充滿希望的。
總之,JavaScript 已從最初作為 Web 瀏覽器的簡單腳本語言的卑微發展到能夠處理客戶端和伺服器端應用程式的強大生態系統。它的歷程以效能、可擴展性和類型安全性的不斷改進為標誌,使其成為現代 Web 開發的多功能選擇。
Node.js 等工具和 React 等框架的引入擴展了其功能,而 Deno 等創新承諾透過將各種工具和配置整合到一個有凝聚力的環境中來進一步簡化開發流程。
隨著不斷的進步和強大的社區,JavaScript 的未來看起來充滿希望,為開發人員提供了一個統一且高效的平台來建立未來的 Web 應用程式。
以上是JavaScript——祝福還是詛咒?的詳細內容。更多資訊請關注PHP中文網其他相關文章!