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