2011-12-20

為什麼選用 Node.js ?

Node.js 在國外很熱門,在台灣也有越來越多的人喜歡上它,而且,不少人對 Node.js 可是愛不釋手哩 !  阿舍自己也滿喜歡 Node.js 的,不過,才剛開始接觸而已,雖然,阿舍沒有介紹過 Node.js,不過,之前有寫過如何在 Ubuntu 上安裝 Node.js,那個時候有大概的提到 Node.js 是什麼,但是,沒有好好的介紹它,阿舍今天也沒有打算要來介紹 Node.js,因為在網路已經有不少好文在介紹了哩 !

圖片引用自 StorageMojo

阿舍今天要理性一點的來瞭解和研究一下,除了喜歡以外,還有什麼原因和理由會讓這麼多人選擇使用 Node.js 來開發程式哩 ! 不過,在開始說明之前,阿舍要來說一下,阿舍為什麼會喜歡上 Node.js 哩 ! 阿舍會注意到 Node.js ,是因為它說是用 Javascript 就可以寫 Server Side 的程式,雖然說 Server Side 的 Javascript 早在 NetScape 的年代就出現過了,現在也還有不少其它的工具,但是,有這麼多人推薦和喜歡的,阿舍倒是第一次遇到,所以,阿舍才會花時間來試試哩 ! 結果,一試成主顧哩 !

阿舍在寫 Ubuntu 安裝 Node.js 的時候,有提到說 Node.js 是一個 Server,其實,這樣說 Node.js 是不太正確的,Node.js 不像 PHP、Python 和 Ruby 等的腳本語言一樣,需要有 Web Server 才能寫出 Web 程式,Node.js 透過模組的支援,Node.js 自己就可以寫出 Web Server 並且可以控制它的行為與運作方式,所以,阿舍自己可以一次針對不同的功能用不同的埠號來建立多個服務,而不需要去調整和設定 Apache Web Server 的一堆設定哩 ! 阿舍覺得這樣很方便,環境很單純,感覺很輕巧有力哩 !

所以,阿舍才會想要好好的學學 Node.js,不過,還是有想要瞭解一下,除了輕巧有力之外,還有什麼其他選用 Node.js 的理由哩 ! 所以,阿舍就去搜尋了一下,整理出 Node.js 主要有下面這幾個優勢。

高效能
因為 Node.js 採用「非同步式 I/O」的方式,所以,不會因為硬體設備的延遲而造成程式因為需要等待回應而影響到程式的執行,因此,執行速度較常見的同步式來的快,另外,Node.js 所使用的 V8 Javascript Engine 是目前效能與速度最好的 Javascript 引擎哩 !

低耗能
除了非同步式I/O之外,Node.js 還採用 Evented I/O 的模式,因此,Node.js 不需要像一般的 Web Server 一樣,需要先割一大塊記憶體來放著用,Node.js 只有需要是才會去使用必要的資源,所以,相對的較省資源。

入門容易
阿舍個人覺得 JavaScript 是一套可深可淺的語言,就是,不需要很懂也可以寫出想要的東西,但是,如果很懂就可以寫出很多令人不可思議的應用,而 Node.js 因為採用 Javascript ,因此,對於許出旳 Web 程式開發者來說,幾乎是無痛的學會另一種應用哩 !

社群支援強
Node.js 和阿舍熟悉的 Drupal 有一部份很像,就是可以透過模來擴充功能,Node.js 有一個叫做 NPM 的網站,專門讓人來提供自己開發的套件 (Package),目前在 NPM 上面已經有 5000 多個套件,所以,可以容易找到需要的功能來用,不需要自己重頭寫,可以加快開發的速度哩 !

推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

沒有留言 :

張貼留言

歡迎留言提問和討論 .... 😁