Rails框架首次提出是在2004年7月,它的研發者是26歲的丹麥人HTTP://www.aliyun.com/zixun/aggregation/16482.html">David Heinemeier Hansson。 不同于已有複雜的Web 開發框架,Rails是一個更符合實際需要而且更高效的Web開發框架。 Rails結合了PHP體系的優點(快速開發)和JAVA體系的優點(程式規整),因此,Rails在其提出後不長的時間裡就受到了業內廣泛的關注。
Rails 下一個主要的發佈是 Rails 版本 3,該版本繼續保持工具組的快速改進。 與以往相同,該軟體仍然非常 「固執」,即仍然偏向于約定優於配置。 Rails 的核心元件始終存在,即 RESTful 路徑、關係、驗證、範本和資料庫抽象化。 不過,這些元件的許多內部內容已經被重寫或者進行了改進。 最明顯的並且很大程度上借用了 Merb 的理念的就是很多 Rails 的基本功能不再密切結合。 例如,以前只對 Rails 應用程式可用的資料驗證便捷功能現在成為獨立的元件,並且可以包含在 Vanilla Ruby 代碼中。 如呈現部件和範本等控制器功能,現在也是相互獨立的,並且可以嵌入到任一庫中。
Rails框架的6大特點:
全棧式的MVC框架
Rails是一個全棧式的MVC框架,換句話說,通過Rails可以實現MVC模式中的各個層次,並使它們無縫地協同運轉起來。
約定優於配置
為了說明各個物件之間的關聯關係,一般的Web應用開發框架往往採用寫入XML設定檔的方法。 這種方式雖然可以解決一些問題,但是卻帶來了管理上的混亂。
更少的代碼
使用約定來代替XML設定檔說明Rails本身完成了大量的底層工作,這意味著使用更少的代碼來實現應用程式是極有可能的。 此外,代碼量的縮減也減小了出現bug的可能性,降低了維護程式和升級程式的難度。
產生器
Rails 使用的即時映射技術和元程式設計技術,免去了開發人員在開發過程中編寫大量樣板檔代碼的煩惱。 在少數需要使用樣板檔代碼的時候,開發人員可以通過 Rails內建的產生器腳本即時創建,而不再是通過手工編寫。 Rails的這個特點可以使開發人員更專注于系統的邏輯結構,而不必為一些瑣碎的細節所煩擾。
零周轉時間
對已有的Web應用系統進行修改後,其一般需要經過配置、編譯、發佈、重新設置、測試等一系列步驟才能投入使用,這明顯浪費了許多時間。 而使用Rails開發Web應用系統,可以通過瀏覽器即時查看程式運行結果,從而節約了大量的時間。
支架系統
Rails的支架系統可以自動為任何相關的資料庫表創建一套包含標準CRUD操作和前臺視圖的系統。 通過支架系統,開發人員可以方便快捷地操縱資料庫中的資料表。 此外,Rails也允許開發人員使用自己設計的代碼或視圖來替換自動生成的代碼和視圖。