BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Grails做足功夫 全力迈向1.0版

| 作者 Geoffrey Wiseman 关注 0 他的粉丝 ,译者 陈俊 关注 0 他的粉丝 发布于 2007年5月7日. 估计阅读时间: 6 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

在过去的几年里,众多的Web框架都把精力投放在提高开发效率上。而Ruby on Rails胜过了许多传统框架而被人们视为Web快速开发的王牌。在Java界,很多的框架都在响应以提高效率,快速开发,和支持脚本语言为目标的号召。 从Grails到Stripes,RIFE到Trails,Tapestry 5.X到Phobos,人们都期望着能有新的能达此程度的Java Web开发方式,来高效快速地构建Web应用环境。

Grails是一个在Java平台上基于Groovy的Rails风格Web框架,伴随着其社区的快速成长,和包括在Tropicana和Pepsico这样的主流公司内的日渐增多的实际应用,最近吸引了很多开发者的眼球。人们通常拿Grails在机遇与挑战方面来与Ruby on Rails作比较, 皆因人们已被在自己熟悉的平台上的这Rails式的框架的力量所吸引了。最近的一系列比较分析结果显示了现在Grails有着更为优越的性能表现。但Ruby新发布的版本预言其能做得比这性能更好。

虽然曾经有过些关于在Grails内部直接支持Ruby的讨论,但当前来说这是行不通的。如果你只是希望把Grails中的一些部分集成到你的应用中,而不是通过Grails来集成Ruby的话,那明显是可行的,你可以在Grails context之外使用的Grails对象关系映射工具GORM,例如可用在Java桌面应用程序上。现在所有的主流IDE都逐渐有支持Groovy和Grails的迹象。如一些在Netbeans IDE上作支持的讨论,还有在IDEA中改进GroovyJ的讨论。在Eclipse上已经开始开发的Grails插件和新发布的Groovy/Eclipse插件,还有现在Edward Povazan致力于改进自动代码完成(Code Completion)来支持Big Sky Technology

Grails最近发布了0.5版本, 该版本包括了性能的提高,自定义URL,增强GORM 等一些特点。Roadmap中的下一步就是0.6版本,还有在今年迟点会发布的1.0正式版。 InfoQ与Graeme Rocher, Grails项目的开发者与领导,谈论了关于Grails当前的成功经验和未来的方向。

当被问及当前Grails引发的潮流时,Graeme回答:

很多的Java开发者都意识到配置不再是一个必要的工作,而Grails正是引领这个潮流的框架之一。与其它的一些框架相比,Grails着重强调重用你 现有的Java知识、底层架构和代码。Grails和Rails一样的优雅,另一方面又和Spring MVC或者Seam一样的灵活,从这两方面来说都真的做得很好了。因此,它也确实得到了社区和全世界的认同。我们花了超过一年时间来准备0.1版本。正因 它的非凡引起了很多人的注意,有很多乐于其中的用户会帮忙散播信息和提高Grails在人们心中的地位。

当谈到在构建Java Web应用方面拿Grails与其它框架相比较时:

Grails信奉着不重复原则(DRY,Don't Repeat Yourself)和无配置规约(Convention-over-Configuration)。当你开发Grails应用时真正会感受到很多地方无需 配置。而你所获得的这些功能都是通过集成一些Java现存的API,库和框架,如Java Enterprise stack、Spring、Hibernate和SiteMesh。

除此之外Grails还有许多关键卖点,包括了可扩展的插件系统,一个基于Hibernate的领域驱动的ORM层,和一个结合Groovy Server Pages(GSP)的强大视图。

当谈及如何去说服别人作第一次Grails的尝试时:

程序员是不需要真的去说服的,Grails在易操控性方面有良好的竞争优势。如果是我想去说服别人使用Grails的话,我只要进行一个5分钟快速演示,然后他们就会信服了。

当问及Grails的1.0 版本和以后会如何发展时,Graeme Rocher回答到:

我们把精力都集中在改进开发者的体验方面,还有在秋季时能发布1.0版本。我们剩下的只是一些”大”问题了,接下来的工作就是通过不断的改进去达到终点线 了。我们还没做的事情包括,JSP标签库支持GSP,如果可能的话以插件的形式支持JPA,还有改进我们的单元测试基础框架。

虽然现在我们主要的精力集中在发布1.0版上,但在那之后,我们会补充一下基础架构,同时会写更多的Grails的插件来继续改进开发者的体验。例如,我就很想腾出时间来为GWT写个Groovy编译器,这样GWT就能作为Grails的一个插件了,我想这必定很有趣。

如果你想知道更多关于Grails方面的资料,你可以继续阅读InfoQ中Grails相关材料(英文),或者去浏览Grails的官方网站,又或者读一下Getting Started with GrailsDefinitive Guide to Grails

查看英文原文:Grails Gathers Steam, Heads for 1.0


译者简介:陈俊SpringSide开 源项目的核心成员,以及中科院软件工程硕士,就职于Accenture。长期从事Java EE应用开发,热衷于软件体系结构,设计模式,软件过程改进及敏捷开发研究,也喜欢尝试不同的开源技术,一直以来坚持为开源社区的发展贡献自己的力量。为 InfoQ中文站贡献内容,请邮件至china-editorial@infoq.com

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT