Posted on 2007-04-18 15:01
ZhangJinglin 阅读(3100)
评论(7) 编辑 收藏 所属分类:
Grails
最近一段时间,Ruby on Rails(以下简称ROR)在Java社区中越来越升温,所有的Java程序员都为这一敏捷的开发框架感到惊奇,惊奇ROR所带来的惊人的开发效率。ROR的主页上这样描述:“Ruby on Rails是一个开源框架,致力于编程的乐趣和生产效率,让你通过习惯优于配置(COC,Convention over Configuration)来编写优美的代码”。非常棒,通过对ROR的了解,Java程序员发现编写程序充满了乐趣和生产效率的提高。但随之而来的就是,ROR基于Ruby语言,一种全新的动态脚本语言,它和Java没有任何关系,当Java程序员度过了最初的美妙感受后,不得不深入了解Ruby语言。而且,ROR的运行效率现在还没法和成熟的Java EE相比较,更不用说成千上万的公司在Java平台所做出来的投入如何继承了。
我们可以把目光放得更远些,Groovy和Grails就进入了我们的视线。
Groovy是一种动态脚本语言,关键是它是基于Java的动态脚本语言,这就足以让所有的Java程序员感到兴奋了。Grails是基于Groovy的类似于Rails的实现,原本叫做Groovy on Rails,因为商标的问题,称作Grails。“Grails并不是Rails的克隆,它的目标是为Java程序员提供一个熟悉的类似Rails的开发环境,使Java程序员可以利用已有的知识进入动态框架,以避免带来巨大的跳跃。比如在Grails中提供了Java程序员非常熟悉的拦截器(interceptors)、标记库(tag lib)、Groovy Server Page(GSP)等等”。
让我们深入看以下Grails到底是什么。Grails在底层是基于开源的Hibernate、Spring、SiteMesh的封装,利用Hibernate实现ORM,利用Spring实现MVC,利用SiteMesh实现页面的布局。Java程序员看到这些技术应该是最熟悉不过的,而且可以确保的是,这些技术是久经考验和经过生产验证的。
如果我们有了基于Java的动态脚本语言,又有了类似Rails的敏捷开发框架,而且这个框架又是基于久经考验的底层框架之上,我们为什么不投入Grails的怀抱呢。