January 5th, 2007
Ruby安装包中,有免费的FreeRIDE和SciTE,编辑Ruby源文件的功能还是挺强的。 然而开发RoR系统,有一个免费的IDE就更好了,这就是RadRails,一个基于Eclipse平台的免费开源的RoR集成开发环境。
RadRails的安装非常方便。 RadRais提供了一个使用Eclipse RCP封装的独立的产品安装包,带有其独立的icon和启动画面(见下图)。 你唯一需要的只是Java的运行库,并不需要Eclipse环境,RadRails已经都包含了,而且作为IDE,带有Eclipse内置对CVS的支持(CVS的两个Perspectives),和对SubVersion的支持(SVN Perspective)。 当然,你必须已经安装了Ruby环境,并且通过ruby安装了rails。 RadRails会通过系统环境变量($path)来找到ruby和rails。 如果没有设置环境变量,也可以在RadRails的preference中进行设置。

每次启动RadRails,和Eclipse SDK一样,会询问项目的根目录位置。 选择了项目启动RadRails以后,就是RadRails的主界面了,默认是Rails的perspective。 在我打开的主界面中,包含一个rhtml的编辑器,一个rb的编辑器和RadRails内置的Web Browser。

通过RadRails来创建一个RoR项目非常容易,在创建Rails Project的向导中,只需要写上你的项目名称,然后Finish。

RadRails会通过rails来创建项目完整的目录结构和基本配置(这个和在命令行下运行 rails <项目名称> 是完全一样的),从控制台也可以看到创建项目过程中的具体步骤。

RadRails带有一个内置的Data Explorer,配置好数据库(我使用的是MySql,并且创建了一个r4rmusic1的数据库,按照rails的做法,配置了development,production和test三个schema)。 从Data Explorer中打开development这个schema,可以看到所有的数据库表,可以浏览所有的数据,或者通过SQL来操作数据库。 在Data Grid中,甚至可以直接编辑字段的值。

RadRails支持rails内带的Webricks服务器,从Server列表中启动项目对应的服务器,打开内置浏览器,就可以运行你的项目了。

这里只是初步的认识一下RadRails这个RoR的集成开发平台。 开发RoR系统还有更多的内容,比如创建Model和Controller,创建View等,慢慢的来进一步认识RadRails。
【相关资料】
下载RadRails: http://www.radrails.org/,可以安装为Eclipse SDK的一个插件,也可以安装独立产品
Popularity: 25% [?]
Tags: ror and ruby
January 3rd, 2007
利用假期在家的时间,找了一本书看,Manning出版的《Ruby for Rails - Ruby Techniques for Rails Developers》。 偶尔在网上googling一下RoR,找到这么一张有趣的图:

这张图的意思大致也就是说,目前的图书中,关于Java, Java EE的书简直就是多如牛毛,而关于Ruby和RoR的书只有2本(我现在在看的,算是第3本吧,O'Reilly也有一本关于RoR的书,算是第4本)。 但是RoR这个新应用框架却正在以狂风暴雨之势席卷 Web 开发社区,特别是Java和PHP。
汇总一下网上的以及自己从书中看到的资料:
- 什么是Ruby?
Matsumoto Yukihiro ("Matz")是Ruby这个编程语言的发明人,他从1993年起便开始着手Ruby的研发工作,1993年2月24日Ruby诞生,1995年12月Matz推出了Ruby的第一个版本Ruby 0.95。Ruby 是一种动态编程语言,它在许多方面类似于 Perl、Python 和 Smalltalk,但是它是自成体系的,Ruby成功的组合了Smalltalk的优雅以及Python的易用性,还有Perl的实用主义。Java 和 PHP 编程人员应该可以很轻松的掌握这一语言。
Ruby 的历史不短,先于在1995 年便为公众知晓的 Java 和 PHP。所以尽管 Ruby 是一个成熟的语言,却不如其它语言普及。这造成了 Ruby 编程语言阵营并不如 Java、PHP 和 Perl 阵营强大(这也是上面这张图展示出来的现状)。
- 什么是Rails?
Rails是一个用来开发以数据库为后台的Web应用的开源框架。 David Heinemeier Hanson 发明的 Rails 框架是 Ruby 诞生以来最受欢迎的应用程序,Ruby 社区推广能力不济的颓势也得到了扭转。Rails 将 Ruby 编程语言扩展为极其适用于 Web 开发的领域特定语言。它还借用了 ActiveRecord 扩展,将对象关系持久性引入了 Ruby 语言。
Rails使用了严格的 Model-View-Controller (模式-视图-控制器)体系结构,赢得了自尊且醉心于设计模式的Java程序员的尊敬 - 这是 J2EE 开发人员对其情有独钟的原因; 同时 Rails 可以非常方便地构建基础系统 - 这是它吸引 PHP 开发人员的原因。
但Rails有它自己的一些薄弱的地方: 从数据库角度来看,Rails 有一些非常明显的缺陷。Rails 对数据库布局和应用程序需求作了许多假定。比如,Rails 假定所有表都使用一个非复合的主键。它不支持复合主键也不支持双步提交(two-phase commit),它只能用于单个数据库后端的情况。
- RoR的优势?
Ruby on Rails最大的优点就是在于简单!RoR的核心思想就是"更少的编程,更简单的配置!"
- 安装和配置非常简单,不象Java需要安装运行环境,安装应用服务器,然后再进行一大堆的配置。Ruby只需要装一个简单的解释环境就可以了。RoR避免了繁杂的XML配置文件,你的应用程序和数据库里已经包含了所有Rails需要的东西。
- 编码简单,很多代码都是可以自动生成,可以自动生成MVC,可以自动生成框架、Web服务。甚至你只要写上一行代码就可以实现以前使用Java上百行代码的工作量,越少的编程量就意味着越少的bug。
- RoR稳定吗,适合企业应用吗?企业应用需要的是稳定和高效。 Ruby和PHP一样,属于解释性语言。 目前使用PHP来开发的Web应用,适合于企业应用的不少,blog系统和讨论组系统也都大量使用PHP。 配合Ruby的RoR在效率上应该没有什么问题。 至于稳定性,目前还没有什么实际的数据可以来讨论。
【相关链接】
Ruby: http://www.ruby-lang.org/en/
Rails: http://www.rubyonrails.org/
Popularity: 19% [?]
Tags: rails, ror and ruby