選擇Nodejs的N個理由

infoq發表於2014-09-28

  Caleb Madrigal是來自美國密爾沃基市的一名軟體顧問。四年前,他在聽說“將JavaScript用作伺服器端語言”這樣的說法時,認為那是一個荒唐的想法。有那麼多伺服器端語言可供選擇,為什麼要選JavaScript?這是他當時的想法。但現在,他在當前的專案中選用了JavaScript/Node.js。他近日撰文對自己的這一轉變進行了解釋。

  首先,許多頂級企業都使用了Node.js,並且效果非常好,其中包括PayPalWalmartEbayGrouponLinkedIn。這些企業在生產環境中大量使用了Node.js。Madrigal舉了PayPal的例子。PayPal針對他們網站上其中一個流量最大的應用,對比了它的Node.js版本和Java版本,發現前者在多個方面優於後者,並最終決定由Java切換到JavaScript。InfoQ對此有過報導

  其次,Node.js有一個很棒的包管理系統NPM。通過執行“npm install 包名”幾乎可以安裝任何包/庫。另外,通過package.json檔案可以跟蹤依賴關係。因此,Node.js庫很容易克隆,執行“npm install”可以安裝所有的依賴關係。

  再次,Node.js社群異常活躍,總是有新的庫產生。這些庫非常好用,使JavaScript成為一個非常高效的平臺。

  然後是Node.js 的REPL(read-evaluate-print loop)命令列。開發人員只需要在終端中輸入“node”,就可以對Node.js進行逐行測試。

  最後,Node.js有一個很重要的特性:非阻塞函式。這就是為什麼我們會在Node.js的程式碼中看到大量的callbackspromises。這種設計模式給Node.js帶來了非常優異的效能。

  此外,Node.js的最大一個優點是:它是JavaScript。任何人都知道JavaScript,所以使用Node.js不需要學習一門新語言。有了它,開發人員可以只使用一種語言,瀏覽器端用JavaScript,伺服器端用Node.js。在使用像MongoDBCouchDB這樣儲存JSON物件的文件資料庫時,這會極大地簡化資料庫和使用者介面之間的資料傳遞任務。

相關文章