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基本可以不看)
2. Ruby资料
《Programing Ruby 2nd》Progmatic bookshelf成员,第1版是免费的,随Ruby安装包附送。但包含了最新Ruby1.8的第2版要收费,不过在Emule上可以下到电子版。
3. Active Record和Action Pack的资料
4.Rails作者及其他Rubyer的blog
David H. Heinemeier--loud thinking
5.国内外的Ruby站点
RubyForge Ruby的SourceForge
待写Blog
*最美的MVC,ORM方案原来在别处(2)--Active Record与Hibernate的比较与借鉴改进
*最美的MVC,ORM方案原来在别处(3)--Action Pack与其他MVC Framework的比较与借鉴改进