實用的線上整合開發平台 -- Nitrous.IO
上次介紹了Koding這個線上程式整合環境(Online IDE)之後,有熱心網友推薦了其他線上IDE網站,於是我也去註冊並使用,發現這個網站也非常好用,跟Koding比起來各有千秋。
與Koding帶有前衛的實驗性質相比,這個平台注重實用與效率,編輯環境更貼近程式開發者的習慣,用了幾天之後覺得真心不錯,所以也來寫篇文章介紹它 -- Nitrous.IO。
我覺得線上IDE與一般如Eclipse或Sublime Text等IDE軟體不同的地方在於:
線上IDE將所有東西都放在雲端的虛擬伺服器上,包括雲端檔案系統與終端介面。這好處除了不會因為本機檔案損毀而讓辛苦的成果完蛋,開發者也可以直接透過終端介面在虛擬伺服器開啟網頁服務,讓外部人員直接瀏覽成果,而不會發生本機開發得好好,在展示主機上卻爛掉的狀況。
許多線上IDE也整合了溝通或社交介面,讓團隊成員可以線上討論,還有與非團隊成員在社交圈中討論。這樣我們可以從線上記錄回憶之前討論的事項,免得出現雞同鴨講或鬼打牆的靈異事件。
線上IDE的版本都是最新且相同的,保證不會出現在我的機器上能跑在你那邊卻不能,或是發生諸如QA心中的痛等慘事。
通常線上IDE的環境已經把必須套件都安裝設定完成,初學者不用困在一堆與開發沒有太大關係的套件設定檔地獄裡。(雖然遲早都會碰到,但是第一天就碰到著實扼殺了不少新手的學習熱誠)
省錢。要在本機上開發並將伺服器架起來,硬體設備至少要有點底蘊,或者拿汰換的主機下來使用,或者新買台實體主機來用。線上IDE所使用的虛擬伺服器其效能通常可滿足絕大多數的情況,對本機的硬體要求甚低,你甚至可以買便宜的Chromebook在線上IDE上開發!
列了這幾點,我非常建議程式新手找個免費的線上IDE來當做自己的出發點,一邊學習程式設計一邊摸索並適應伺服器的工具程式。練功先學蹲馬步,過了這關之後就海闊天空了。
像我現在就在Nitrous.IO上練習Node入門這本書的題目與內容。越練習越感受到線上IDE的方便之處。
好了,讓我以Nitrous.IO當例子,來試試申請帳號,配置虛擬機器,並且下載與啟動一個Node.js專案當做初窺門徑的練習吧。
進入Nitrous.IO網站之後,第一件事就是要建立帳號。Nitrous.IO可以使用Github,Google或者LinkedIn的帳號登入,如果有以上網站的帳號,可以用Single Sign-on串連帳號免去以後要分開登入的麻煩。
我主要是用Github來做帳號的整合。因為我已經登入Github了,所以它會直接將我轉到Github的授權網頁,在這邊按下"Authorize application",還剩幾步就差不多完成了。
接著他會要你輸入Github的登入密碼以確認你就是本人。
認證與授權步驟都完成後,頁面會轉回Nitrous.IO的帳號密碼創設頁面,當你取了帳號密碼之後就完成創帳號的步驟了,基本上以後只要Github沒登出,登入Nitrous.IO是不用輸入帳號密碼的,這就是Single Sign-on的方便之處。
帳號創設之後,Nitrous.IO要求你做的第一件事情就是建立第一個虛擬機器。目前它提供五種預設的伺服器型態,分別是Ruby/Rails,Node.js,Python/Django,Go以及PHP。跟Koding平台一個虛擬機器包所有功能不同。Nitrous.IO的虛擬機器一台預設安裝的套件是固定的,你可以透過管理介面安裝新的套件以擴充功能。
在Nitrous.IO上,每個使用者擁有一個叫N2O的資源單位,平均開一台新的虛擬機器需要140點N2O,若是要替虛擬機器擴充硬碟或記憶體,就需要更多的N2O來購買。而一般使用者一開始只擁有140點N2O而已。你可以透過介紹新朋友來此開帳號,連結各個社交平台,作問卷訪問等得到N2O。但最直接的方式就是付錢買N2O,畢竟Nitrous.IO的工程師也是要吃飯的。
不過若是新使用者或輕度玩家,一台虛擬伺服器應該就夠用了。
當你創造完第一個虛擬機器後,就會進入Dashboard頁面,在這裡你只要點了"IDE"按鈕就能進入線上IDE頁面。如果只是純粹想登入虛擬機器執行命令,那點"Terminal"就能快速進入終端機介面。
經歷以上步驟我們終於來到線上IDE頁面。 Nitrous.IO的IDE毫不花俏,它將所有網站開發團隊需要用到的功能全部整合在一個樸素的工作環境中,由左向右依序是檔案管理,文字編輯,溝通平台。以及正下方的虛擬伺服器終端介面。
這個頁面樸素歸樸素,但是一個老練的前端程式開發者需要的功能全都具備了,虛擬機器的效能也讓人滿意,可說是一款成熟又穩重的產品。
在這個整合環境底下,有趣的地方是右邊的溝通介面,它可以邀請其他Nitrous.IO的註冊使用者成為你的虛擬伺服器的管理員,被邀請者可以任意瀏覽更改你的虛擬伺服器上的任何檔案,包括SSH的認證金鑰!
另一點就是它會將包括你在內的成員的任何活動,包括開啟檔案,登入登出以及對話內容記下來,這樣就可以快速追蹤誰正在作什麼,以前作過什麼。
簡單介紹完了整合環境,就讓我們藉由複製Github上的Node.js專案來體驗一下線上IDE的優勢。
首先,在Nitrous.IO的Dashboard創造一個新的虛擬伺服器,在創造頁面上選擇Node.js型的機器,然後創造它。如果你已經有機器的話可以透過管理介面安裝Node.js,方法如下:
在IDE介面最上方的選單選擇Autoparts,並選擇Manage Packages:
開啟Manage Packages,在套件過濾欄位裡鍵入"Node.js",就會發現Node.js套件可以選擇安裝。按下"install"之後等待安裝完成,就可以使用Node.js了!
在IDE頁面下,游標在終端介面那邊按一下,轉換鍵盤的輸入焦點。然後輸入git指令從Github裡面把範例專案拉下來:
git clone https://github.com/neversay/nodejs-sample.git
將專案拉下來後,在左方檔案管理員把目錄nodejs-sample展開,對檔案example1.js點兩下打開它,在編輯器畫面中修改它的程式碼。
之後用Ctrl加S鍵快速儲存檔案(真是窩心,居然在瀏覽器裡面一樣可以用一般文字編輯器的快捷鍵)
進入nodejs-sample檔案夾,然後用以下指令開啟Node.js伺服器:
開啟Node.js伺服器後,在IDE上端的選單裡打開Preview選項,然後選擇Port 4000:
完成了!你的瀏覽器會開啟新視窗,並且把結果"Hello World"印在新視窗裡!恭喜你!你已經完成了Node入門的第一個範例了!
要停止Node.js的程式,只要將焦點回到終端介面,按下Ctrl+C就能終止它了。
接下來,你可以照著Node入門這本書的範例,一步一步將Node.js的基本功能實作完。體驗Node.js特殊的編程方法。
若是讀者想要嘗試更多不同的線上IDE,這邊有一些文章[1],[2]介紹了世界上最受歡迎的線上IDE,以及Wikipedia上的列表。這些線上IDE或雲端IDE都各有擅場,但基本操作都跟Nitrous.IO以及Koding差不多,所以在摸熟這幾個免費線上IDE之後,要熟悉新的線上IDE就不是一件值得費心的事情了!