论坛首页 Java企业应用论坛

Grails is a breath of fresh air for Java developers

浏览 9843 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-03-30  
最近http://www.indicthreads.com/对Grails的创始人Graeme Rocher 做了一次访谈,其中谈及了Grails和RoR以及对动态语言的看法,从中可以看出开发者对Grails这个框架的立场和定位。

Graeme Rocher 说RoR中有一些他很不喜欢东西,比如说RHTML,但他也承认RoR确实是个好东西,当初要不是为了兼顾那些使用了Hibernate和Spring的老系统,他也早就用上RoR了。

Graeme Rocher对动态语言持一种比较保守的态度,他认为动态语言的确非常好,不过只适合简单的或中等复杂度的应用,在大型项目中完全使用动态语言--不管是Groovy还是Ruby--来开发是十分愚蠢的。和DHH的激进不同,Graeme Rocher似乎表现的更加中庸,他认为Grails应该在静态语言和JAVA之间找到一种平衡,我觉得他的这种态度最终会影响到Grails的开发和架构,不知这是福还是祸。

Graeme Rocher一再强调了Grails对java程序员来说是非常容易使用的,因为它使用的是语法和java非常相似的Groovy,并且Grails是基于Spring、Hibernate、SiteMesh等流行的java框架之上的,这样不仅容易掌握而且还易于与java集成。他最后认为Grails被广泛采用的主要障碍来自于管理层而不是java程序员。

http://www.indicthreads.com/interviews/1098/grails_web_framework_java_developers_1.html

从这次访谈来看,总体感觉Graeme Rocher是一个比较冷静的人,这对开发Grails这种全新的框架来说是个优点还是不足呢?不知您怎么看?
   发表时间:2007-03-30  
Grails的革新和RoR相比,非常不彻底,很多地方兼容Java习惯的痕迹很明显,所以使用起来,远远没有RoR快速和方便;Grails和传统Java编程相比,毕竟是动态脚本语言,因此又不具备传统的编译器检查的好处。总之,就是Grails这种中庸的态度导致Grails从快速开发角度既不如RoR,从类型安全的角度又丧失了Java静态类型的好处。

另外,虽然Grails作者因为rhtml可以嵌入ruby代码,所以对rhtml不爽,但是我更不爽JSP Tag。可以这样说,JSP Tag是Java有史以来web编程发展历史上的最大败笔。jsp tag导致了难以进行页面局部重用,难以动态切换页面实现,这对于类似博客网站的应用来说,相当致命。对于页面局部重用,即使是freemarker都提供了很简单的宏扩展功能,而jsp tag则不得不被迫用Java编程自定义tag,至于博客切换模板,那根本就是没门,但是对于freemarker来说,实现很简单。

Grails只能使用JSP Tag作为view层实现,简直就是历史的倒退,基本上凡是强制使用JSP Tag的Java Web框架,我无一例外的反感(webwork是一个例外,webwork可以自由切换view层实现)。

RoR的rhtml模板在局部页面重用,页面装饰,动态切换页面这些方面做的极好,超越了目前我所了解的所有Java Web框架,至于页面嵌入ruby代码,这是一个有没有心理障碍的问题。
0 请登录后投票
   发表时间:2007-03-30  
现在参与的一个项目中,J2EE中UI的实现难度遭到了具有.NET经验同事们的一致狂批……
0 请登录后投票
   发表时间:2007-03-31  
David is obviously speaking from his experiences in building 37 signals' applications which are well suited to simplicity and CRUD operations, but the reality is there are many different use cases. Some of which are too complex to be suited to a dynamic language.
对于DHH所说的java应该是Web开发的聚光灯下退出的观点,Graeme Rocher发表了上述的言论,其实何止是DHH,我们每一个人对于RoR和Java的看法都受到自己的知识面、实践经验以及所从事的领域的影响--用Java做企业应用的开发者大都觉得RoR不可能对Java造成太大的威胁,或许真正的对手有可能是.Net,而从事公众互联网的人深入了解了RoR后都像是打了强心剂般的兴奋。从Graeme Rocher的言论来看,Grails不会成为RoR的竞争对手,也不会一统Java框架,那对我们来说,花上一天的时间学习一下Groovy和Grails,把它们做为工具箱里一个备选的工具,应该也是一个不错的选择。
0 请登录后投票
   发表时间:2007-03-31  
jsp的tag确实不是个好东西,但是这也只是技术进步到现在才确定的时,jsp tag出来的时候那也算是不错的技术(就当时的环境来说),但是现在还是这么多人用它(包括我),我觉得我们很多人是太保守了,事实上现在根本没有使用它的理由了,如果是struts或webwork,我们可以用velocity或freemarker,如果是wicket或tapestry就彻底的是html了,为什么还要用jsp和jsptag呢,第一次编译又慢,而且在portal上页面大了还没法编译,非得切页面,恶心啊
0 请登录后投票
   发表时间:2007-03-31  
可是Sun似乎并没有吸取教训,在JSF中依然使用JSP TAG,尽管JSF柔韧的设计可以实现和Tapestry相似的方式,现在很多用JSF的人不得不再加一个Facelet……今天看新闻说JSF2.0可能抛弃JSP TAG,这算的上是一个好消息了。不过Grails中的TAG似乎没有JSP中的TAG那么讨厌……
0 请登录后投票
   发表时间:2007-04-02  
引用
在Rails中,web页面是通过混合了HTML和ruby代码的.rhtml文件(就像是Java和HTML混合在.jsp文件中)来实现的。不同之处在于,.rhtml文件是在运行期被翻译的,而不是像.jsp页面那样要先编译成servlet。对于Rails来说,这种机制使得在web容器之外为web页面生成HTML变得容易。实际上,web服务器都不需要运行。

这种产生HTML的便利和灵活性意味着Rails的测试框架仅仅需要为.rhtml文件内的ruby scriptlet设定值,生成HTML,然后解析HTML成一个测试能够访问的格式。

Robert C. Martin在用户界面测试系列之一中提到RoR的rhtml使用户界面变的简单可行,这一点要比Grails要好,Grails还是很难脱离容器测试用户界面的。

http://blog.csdn.net/rmartin/archive/2007/01/30/1497556.aspx
0 请登录后投票
   发表时间:2007-04-02  
yanhua 写道
引用
在Rails中,web页面是通过混合了HTML和ruby代码的.rhtml文件(就像是Java和HTML混合在.jsp文件中)来实现的。不同之处在于,.rhtml文件是在运行期被翻译的,而不是像.jsp页面那样要先编译成servlet。对于Rails来说,这种机制使得在web容器之外为web页面生成HTML变得容易。实际上,web服务器都不需要运行。

这种产生HTML的便利和灵活性意味着Rails的测试框架仅仅需要为.rhtml文件内的ruby scriptlet设定值,生成HTML,然后解析HTML成一个测试能够访问的格式。

Robert C. Martin在用户界面测试系列之一中提到RoR的rhtml使用户界面变的简单可行,这一点要比Grails要好,Grails还是很难脱离容器测试用户界面的。

http://blog.csdn.net/rmartin/archive/2007/01/30/1497556.aspx


用rails提供的超强工具assert_select去测试view,只有一个字“爽”
0 请登录后投票
   发表时间:2007-04-02  
看来一定要研究研究ror了,快跟不上形势了
0 请登录后投票
   发表时间:2007-04-02  
就我做过的项目来说,grails比webwork要便捷多了,ror没有用过,没有发言权,倒是Django想去尝试一下,主要是脚本语言的喜好
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics