Ruby on Rails簡介

May 30, 2007 · Posted in Ruby on Rails 

Ruby on Rails logo我在前兩年就一直在網路上看到Ruby on Rails這個字,但一直沒有去深入了解它是什麼?直到最近因為覺得用PHP來做資料庫驅動的網站,需求改變的時候,要修改起來真的很辛苦。又正好看到IT Home上的一篇介紹Ruby on Rails的文章,提到使用Ruby on Rails開發會比PHP快五到十倍,而且在Computer World的報導裡名列2007年最應該了解的技術第一名,所以就決定開始好好了解一下Ruby on Rails,看看它到底有什麼能耐。

Ruby on Rails其實是一套以Ruby程式語言開發的網頁應用程式架構。Ruby是由日本人松本行弘於1995年發佈的一套程式語言,特色是完全物件導向、靈活有彈性、有豐富的程式庫、簡單易讀的語法,還有各種小訣竅能夠讓程式碼更簡短。
而Ruby on Rails是由37 Signals的David Heinemeier Hansson在開發BaseCamp線上專案管理軟體時,因為對既有的框架不滿意,而為資料庫網站開發量身定做出來的架構。Ruby on Rails於2004年7月時以開放原始碼的方式發佈,很快的就得到廣大的迴響。在Windows, Mac, Linux上都能夠運作,資料庫與Web Server的選擇性也很多。
Ruby on Rails的觀念在於利用慣例優於組態(convention over configuration),軟體精簡(less software)與越快越有生產力(programmer happiness ultimately leads to better productivity)。
Ruby on Rails是完全的Model-View-Control架構,資料庫、程式邏輯與呈現完全清楚的分離。在檔案名稱與目錄結構方面,也都定義的很清楚。資料庫這部份(Active Record)是Ruby on Rails最強大的功能,只要設定好資料庫連結,之後建立、調整Schema或是其他存取都是直接由Ruby on Rails去控制,不用由我們親手去動資料庫,資料庫裡的欄位也能和Ruby on Rails裡的變數直接對應,不用再像用php的時候,和SQL語法一大堆冒號、引號奮戰。另一個可以加快速度的特點在於自動產生使用者界面的程式碼(scaffold功能),這代表我們只要把定義好資料庫和要作的動作,Ruby on Rails就會為我們產生使用者界面,我們只要專注在真正要解決的問題上,而不用花太多時間在建立使用者界面上。

在測試方面也是Ruby on Rails的強項,它可以為我們自動建立測試檔案及資料庫,加速測試流程,確保程式品質。

不過它能帶來的好處,還是要親自試試看才知道!下一篇在和大家介紹怎麼用最簡單的方式在Mac OS X建立Ruby on Rails的開發環境。

Ruby on Rail中文網站
http://rubyonrails.org.tw/

PS: 官方網站上的影片範例很精彩,15分鐘就能開發一個部落格系統、5分鐘就寫好一個Flickr Mashup。

Comments

12 Responses to “Ruby on Rails簡介”

  1. 沈蚊 on May 30th, 2007 4:24 pm

    ror好像是很好玩的東東呢~~

  2. Vincent Huang on May 30th, 2007 4:53 pm

    用慣PHP的人也可以試著用一下 cakephp 啦,雖然還沒有像ROR那麼「優雅」,用起來感覺也還不賴喔;)

  3. kuni on June 1st, 2007 11:25 am

    RoR很有趣,如果深入去玩,會覺得好像在玩RPG遊戲般,可以感受到他將很多開發的工作有調理的整理出來。

    另;在mac下用textmate真的是很酷阿,超好用的。效率高,又不像IDE會消耗系統資源

  4. Tyler on June 3rd, 2007 12:48 am

    Hello,我叫Tyler
    我是個Mac重度重毒者:)
    我開了一家小遊戲開發公司(http://www.maru-works.com)

    RoR真的很好玩說..有空來切磋一下:)

    最近有個機會可以做Flash手機遊戲,想來研究Flash Lite….以後會常常來報到:)

  5. lis on June 3rd, 2007 2:03 am

    To kuni,
    你說得沒錯,不過TextMate的祕訣我還有很多要去發掘。

    To Tyler,
    歡迎歡迎!

  6. Tyler on June 3rd, 2007 2:20 am

    忘了講…我這兩天買了N95…
    已經把Theme改成OSX了,
    鈴聲也改成動畫版”交響情人夢”的片尾曲 :) http://zh.wikipedia.org/wiki/交響情人夢
    今天我的Mac還用N95的3G Modem上網 :)
    而且更新了Papago到1.5版
    正在研究如何用Mac直接對N95輸入中文

    不知阿修是否也買了N95..(從另外一個部落格http://n95user.blogspot.com覺得有可能)

  7. [...] 沒想到用IE無法連上,換了Firefox瀏覽器嘗試連黑米,卻看到螢幕上一堆Ruby on Rails的錯誤訊息,連忙上到平常常逛的Skype群組問問也是黑米同好的朋友們。沒想到他們卻告知黑米一切正常,呃,難道是我自己網路的緣故嗎?嗯,再次reload果然出現那熟悉的淺綠色畫面,看來是我恰好遇到當機的瞬間了…… [...]

  8. mywoo on June 14th, 2007 9:15 pm

    catalyst
    http://catalyst.perl.org/

    功能更強

  9. ruby-china.cn on September 17th, 2007 4:13 am

    欢迎高手光临 http://www.ruby-china.cn

  10. Dylan on April 16th, 2009 11:10 am

    沒接觸過RoR
    有點疑惑來請教一下
    請問
    如果寫好一個網站之後
    怎樣的環境能讓他運作呢?
    一般所租用的虛擬主機是否可行@@?
    (我一直都是寫PHP 有租用一個Linux虛擬主機)

  11. leah on May 7th, 2009 2:28 pm

    我需要找一位寫ROR的網路程式設計師 請問是否知道有朋友在兼差?火或者那裡可以找到part time 的程式設計師 請與我聯絡leahalbany@gmail.com 謝謝

  12. 阿泰 on July 20th, 2010 1:00 am

    長知識啦,原來網頁開發也可以這樣玩,網路應用因雲端而發揚光大。

Leave a Reply




  • Plurk

  • 我的位置

  • Events

  • My Flickr Photos

    www.flickr.com
  • Meta

  • Counter
    Technorati Profile