今天終於一口氣讀完Javascript Ninja這一本書了,然後迫不及待拿出下一本跟JavaScript有關的書繼續學習,這本書講的其實不只是JavaScript,而是將Javascript擴展到其他應用程式開發平台的Node.js

  近年來由於Javascript 的熱潮而使得將Javascript擴充應用或重新包裝成新的程式庫成為一門顯學,各式各樣強調以JavaScript為基礎的應用技術紛紛出爐,而最受我觀注但一直沒機會碰觸的就屬Node.js以及React.js了。

  Node.js說來第一眼看見他時覺得這東西很像很神秘,雖然只知道他是JavaScript base的技術,但因為有些書的封面都強調Node.js能拿來寫後端應用程式,所以讓我感到神奇,這是什麼牛逼的新技術?

  說來Node.js 也不是今年才出的產物,早在2015年就已經流行起來,但他決不只是可以拿來寫網頁後端程式如此簡單而已,其實他真正的特點是讓用JavaScript寫的程式能Run在任何平台上,也就是讓JavaScript不再只是在Browser上執行前端作業的角色,而是跟其他傳統程式語言一樣,可以拿來開發桌面應用、後端應用、網路應用、嵌入式應用…. 等等各種應用程式的產品,它是將JavaScriptBrowser牢籠中解放的英雄化身,所以Node.js不是JavaScript的程式庫,而是將JavaSript應用一般化的新技術。

  那麼該如何讓JavaScript Run在各種不同平台上呢?答案是從JavaScript Interpreter下手。 因為JavaScript是直譯式語言,所以執行時雖然因為不用像CComplier 語言一樣預先編譯才執行而有效率,但仍需透過直譯器在執行時把每一行JavaScript程式碼轉成機器碼才能讓機器執行,所以只要在直譯器上動一些手腳就可以讓JavaScript Write Once, Run Anywhere!

  因此Node.js採用Google開發的JavaScript V8 Engine來實現跨平臺功能!你沒看錯,確實是像Java一樣的跨平臺執行能力,而V8 Engine便是JavaScript與各機器平臺之間的橋粱,是第一個加入JIT功能的JavaScript直譯器。

  從上圖可以看出只要在對應的平臺裝上對應的V8 Engine便可以輕鬆讓JavaScript程式跑在各個平臺了,完全不用改寫程式碼,就跟Java一樣。

  所以我今天在Windows 上要透過Node.js 執行JavaScript寫的程式,必先到Node.Js 上抓取Windows NodeJS Installer,大概就是為Windows裝上Node.js直譯器的概念,同理若是我要RunLinuxMac上,官網必也有提供相對應安裝包,如下所示:

 

  在Windows 安裝Node.js 相當容易,就是下一步大法無限釋放而已,裝完後只要打開Dos Command Console,然後輸入"node"按下enter便進入node執行模式,此時在上面加一句簡單的console.log(“Statement”);語句便會印出Statementconsole上:

  注意!這邊完我們完全是用JavaScript程式來執行作業,但卻是執行在Windows Command Line上,而不是Browser,這就是Node.Js神奇的地方!所以同樣我們也可以把console.log(“Statement”);寫好存成一個hellonode.js檔再到Command Line上用node hellonode.js指令便可以執行該js檔案內容,跟我們在執行python script一樣,不用再透過Browser。 於是乎我完成了第一次的Node.js程式作業。

2017521日星期日11:44 PM

 

arrow
arrow

    jackterrylau 發表在 痞客邦 留言(0) 人氣()