Ruby on Rails
是一個可以使你開發,部署,維護
web
應用程序變得簡單的框架。
?
當然了,所有的
web
框架都有同樣的目標。是什么使得
Rails
如此不同呢?我們可以通過幾個途徑來回答這個問題。
?
第一是看架構。在過去的時間里,許多開發者在嚴謹的
web
應用程序上使用
MVC
架構。他們發現
MVC
架構可以使他們的程序變得更清晰。(我們將在下一章更詳細討論
MVC
)在
java
中象
Tapestry
和
Struts
這些框架都是基于
MVC
。
Rails
也是一個
MVC
框架。當你使用
Rrails
進行開發,應用程序的所有代碼以一種標準方式互相作用。在開始開發之前,整個應用程序的骨架已經搭好的。
?
回答這個問題的第二個是看編程語言。
Rails
程序是使用
Ruby
編寫的,它是一門現代,面向對象的腳本語言。
Ruby
簡潔,不難理解。它可以讓你快速地用代碼自然
,
清晰表達想法。讓你的程序能很簡單被編寫并且在幾個月后還能很容易讀懂。
?
Ruby
有它自己的編程風格,這對于
Lisp
程序員看起來會很熟悉,但是對于其他人來說還是相當奇特的。這語言很容易編寫方法完成幾乎所有的動作例如擴張語法,一些人稱之為元程序。(具體概念參考
http://www.csdn.net/develop/article/18/18074.shtm
)正好這是對我們很有用的。它可以使我們的程序更短,可讀性更強。它也允許我們完成通常需要在外部擴展配置文件完成的一些任務。在接下去的一些事情,它做起來就更加簡單了。下面代碼是定義一個
project
。現在不需要擔心這里面的細節。相反,我們要想想這幾行代碼表達了多少的信息。
class Project < ActiveRecord::Base
?????? belongs_to :portfolio
??? has_on :project_manager
??? has_many :milestones
??? has_and_belongs_to_many :categories
???
??? validates_presence_of :name,:description
??? validates_acceptance_of :non_disclosure_agreement
??? validates_uniqueness_of :key
end
?