ruby on rails

ruby on rails

Ruby on Rails是一個可以使你開發,部署,維護web應用程式變得簡單的框架。

基本信息

來歷

於2004年7月,Rails的創始人大衛·海納梅爾·韓森從37signals公司的項目管理工具Basecamp裡面分離出RubyonRails,並且以開源方式發布。

主要特點

ruby on railsruby on rails
所有的web框架都有同樣的目標。是什麼使得Rails如此不同呢?我們可以通過幾個途徑來回答這個問題。
第一是看架構。在過去的時間裡,許多開發者在嚴謹的web應用程式上使用MVC架構。他們發現MVC架構可以使他們的程式變得更清晰,在java中像Tapestry和Struts這些框架都是基於MVC。Rails也是一個MVC框架。當你使用Rails進行開發,應用程式的所有代碼以一種標準方式互相作用。在開始開發之前,整個應用程式的骨架已經搭好的。
回答這個問題的第二個是看編程語言。Rails程式是使用Ruby編寫的,它是一門現代,面向對象的腳本語言。Ruby簡潔,不難理解。它可以讓你快速地用代碼自然,清晰表達想法。讓你的程式能很簡單被編寫並且在幾個月後還能很容易讀懂。
RubyonRails是一個Web應用程式框架,是一個相對較新的Web應用程式框架,構建在Ruby語言之上。它被宣傳為現有企業框架的一個替代,而它的目標,簡而言之,就是讓生活,至少是Web開發方面的生活,變得更輕鬆。
J2EE是一種利用Java平台來簡化企業解決方案的開發、部署和管理相關的複雜問題的體系結構。J2EE技術的基礎就是核心Java平台或Java平台的標準版,J2EE體系結構提供中間層集成框架用來滿足無需太多費用而又需要高可用性能高可靠性以及可擴展性的套用的需求。
Java平台有3個版本,它們是適用於小型設備和智慧卡的Java平台Micro版(Java2PlatformMicroEdition,J2ME)、適用於桌面系統的Java平台標準版(Java2PlatformStandardEdition,J2SE)、適用於創建伺服器應用程式和服務的Java平台企業版(Java2PlatformEnterpriseEdition,J2EE)。
RubyonRails和J2EE堆疊的比較
可以看到,Rails堆疊和構成普通的基於J2EE的Web應用程式的組件之間的基本區別很小。兩者都有用來執行應用程式代碼的容器;都有幫助分離應用程式的模型、視圖和控制項的MVC框架;以及持久存儲數據的機制。

相關

習慣約定優於配置
這個思想貫穿了Rails設計的始終。舉個例子,通常我們寫javaweb應用程式,都會按照MVC來給對應類做區分,我個人喜歡將Controller類放在web目錄中,將View類放在view目錄中,將model類放在domain目錄中。但是不同的人有不同的設定,不同的命名,如何讓框架知道這些不同的目錄呢,java框架的解決之道,只能是通過xml配置檔案讓它了解這些信息。而rails的解決方式就是:目錄結構我來定義,你只要在我定義好的目錄中放東西就可以了。這也就是為什麼rails中很少有配置檔案(但不是沒有)的一個重要原因。雖然思想很簡單,但是它帶來的好處就是,Rails的開發效率是java開發的10倍(這是rails的fans宣稱的,不過我相信這點,相信看完這篇文章你也一定會的)。那么光這點就能讓rails開發比採用java更快了嗎?不完全是這樣,因為這還得益於rails的另外一個設計理念:更少的代碼。並不是任何語言都能那么宣稱的,rails實現這點完全得益於它的設計語言Ruby。使用Ruby你的確能用很少的語言寫很多的功能,這是其他語言所無法實現的。想要掌握Rails,你一定要了解Ruby。

生成器

rubyonrails使用的實時映射技術和元編程技術,免去了開發人員在開發過程中編寫大量樣板檔案代碼的煩惱。在少數需要使用樣板檔案代碼的時候,開發人員可以通過rubyonrails內建的生成器腳本實時創建,而不再是通過手工編寫。rails的這個特點可以使開發人員更專注於系統的邏輯結構,而不必為一些瑣碎的細節所煩擾。

相關詞條

相關搜尋

熱門詞條

聯絡我們