Java世界裡幾百個ORM Framework和MVC Framework妖精打架,吸引了全世界大部分目光的時候,Ruby on Rails作為我心目中最佳的MVC, ORM framework悄悄出現了。
優點
1.簡潔。因為是Pragmatic programer那幫子人搞出來的東西,所以非常Pragmatic,瘋狂使用了反射,元數據和強悍的、高度自動化的基類,再加上Ruby本身的動態語言優勢,使得Rails的代碼量只有Struts/Webwork+Spring+Hibernate的N份之一,默認的CRUD系統,只需要一行代碼。
2.性能。據評測,速度居然還比Struts+Spring+Hibernate的速度快15%-30%。
3.良好的語義和真正領域驅動開發。我覺得這點是最重要的,Active Record和Action Pack作為我心目中最優秀的ORM,MVC方案,真正實現了Domain Object模式和清晰的MVC管理,還有Ruby能把語義定義得像DSL一樣。讓編程語言口語化,把程序以日常語言來表達,而不是使用抽象的通用語言如Java,C#,並且按照機器的思維模式來編寫是我所關注的。
學習目的
學習一下Ruby On Rails,一來可以在中小項目裡直接應用Rails從而獲得N倍的開發速度, 二來也可以反過來影響在Java World裡面ORM,、MVC的設計思路,吸取ror的優點改善自己的框架。
而且,Rails的入門有個特點,花上15分鐘,寫一行代碼,就能實現第一個完整的CRUD系統,不像別的語言要搞半天,才打印一句Hello world。
架構
Ror的架構圖如下,服務器是apache,根基是我認為最好的MVC方案--Action Pack和最好的ORM方案--Active Record,再加上類似JSP的vIEw template和小小的代碼生成器,就是Rails了。
學習資料
1. 快速指南
Rolling with Ruby on Rails part1
Rolling with Ruby on Rails part2
Four Days on Rails (day1基本可以不看)
用Rails創建web應用
2. Ruby資料
《Programing Ruby 2nd》Progmatic bookshelf成員,第1版是免費的,隨Ruby安裝包附送。但包含了最新Ruby1.8的第2版要收費,不過在Emule上可以下到電子版。
《Progarming Ruby 1st》的部分中文翻譯
3. Active Record和Action Pack的資料
Active Record
Action Pack
4.Rails作者及其他Rubyer的blog
David H. HeinemeIEr--loud thinking
Andy
Dave Thomas
5.國內外的Ruby站點
RubyForge
Ruby的SourceForge
RubyGarden
Ruby on Rails
Ruby中國
Ruby-CN待寫Blog*最美的MVC,ORM方案原來在別處(2)--Active Record與Hibernate的比較與借鑒改進*最美的MVC,ORM方案原來在別處(3)--Action Pack與其他MVC Framework的比較與借鑒改進