`
robbin
  • 浏览: 4797917 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
377a9ecd-1ea1-34ac-9530-9daa53bb2a7b
robbin谈管理
浏览量:135690
社区版块
存档分类
最新评论

点评Grails vs RoR

    博客分类:
  • Java
阅读更多
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代码,这是一个有没有心理障碍的问题。
分享到:
评论
8 楼 philix 2011-08-19  
groovy,grails 必死无疑
7 楼 aoliwen521 2010-04-19  
我水平太低,不能理解 jsp tag 如此败笔的程度的原因是啥。。。
我觉得还凑合。
6 楼 jy00057800 2008-01-22  
grails的tag很爽呀
class MyCheckboxTagLib {
    def checkGroup = { attrs ->   
            attrs['allList']?.each{t->
                def value =t."${attrs['valueField']}"
                def name = t."${attrs['nameField']}"
                ////
                def check = ''
                attrs['selectList']?.each{st->
                     if(value==st.id)
                     {                        
                          check = "checked='true'"
                     }
                }              
                out << "<input type='checkbox' ${check} name='${attrs["name"]}' value='${value}' />${name}<br>"
            }
    }      
}
这就是一个checkbob的标签,作用就是默认那些选择那些不选择.
不用配置,也不用声明.
只要写在grails-app\taglib下就可以,类名和方法名字也是随便起.
页面调用就是
<g:checkGroup allList="${menus}" selectList="${menus_role}"  nameField="menuName" valueField="id"  name="menus" />
menus,menus_role从控制器传进去
5 楼 liangshixing 2008-01-01  
显然Grails页面GSP里可以像rhtml那样写代码滴
4 楼 Tin 2007-04-20  
Ruby的语法还是更加舒适和轻松呀。
3 楼 mave99a 2007-04-16  
JSP很不爽这说非常赞同 ! 可惜JSF还是严重使用了JSP,还加了更多让人不爽的tag
2 楼 dongbin 2007-04-02  
把ruby往Java上挪本来就是一件费力不讨好的是情。 rhtml确实不匝地,Haml将是ROR view的主流。
1 楼 andyao 2007-04-02  
页面中嵌入Ruby代码,个人觉得没什么问题。其实JSP Tag也可以理解为在JSP页面中加入Java代码,只是多加了一层封装,《Core J2EE Patterns》将这种方式称为View Helper。但是实际应用中确实像robbin说的那样,很难进行页面局部重用。

相关推荐

    Grails Grails Grails

    Grails Grails Grails Grails Grails

    Grails权威指南 Grails权威指南

    Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南

    Eclipse下搭建Grails项目

    Grails项目的应用越来越多,而对于初学者来说,在Eclipse下搭建Grails项目是一个难题,这个文档将教会你如何搭建Grails项目,希望对你有所帮助。

    Grails入门指南 -- 针对grails1.0.4更新

    Grails入门指南中文pdf -- 针对grails1.0.4更新,附加idea8 开发grails的流程

    Groovy轻松入门——Grails实战基础篇

    在学习任何东西之前,最重要的是培养兴趣,Groovy世界最耀眼的技术之一--Grails相信大家早已耳闻,我将通过Grails实战系列文章 向您展现Grails的迷人风采,使您感受到Grails的魅力,以至疯狂地爱上Grails,并坠入...

    Grails1.1中文文档

    Grails1.1中文文档

    grails开发环境配置及应用开发

    详细讲解grails开发环境配置。 详细讲解grails连接mysql数据库,crud开发

    grails+Xfire webservice

    grails+Xfire webservice

    grails

    grails-2.1.zip.001

    grails 1.0.4

    Grails专为下一代JavaWeb应用程序而设计的框架,其借助于Groovy动态语言,使Web开发变得简单而方便。Grails尽量为更多现有的Java项目创建一个全面的框架(不仅局限于视图处理),这和当前一些Java框架提供给用户的一...

    Grails中文参考手册

    Grails 中文 参考手册

    grails框架

    grails的插件系统也是其亮点之一。首先,和rails,django等web框架类似,基于微内核的思想,插件(可重用模块)是框架的一等公民。grails除了核心模块以外的功能几乎都是通过插件方式实现的。实际上,一个grails插件...

    grails 中文文档+grails-fckeditor-0.9.5.zip插件

    grails 中文文档+grails-fckeditor-0.9.5.zip插件

    Grails1.3.7参考手册

    Grails 1.3.7英文版官方参考手册,学习Grails的权威指南

    grails入门经典

    grails grails入门经典 grails入门 grails例子 grails资料 通过自学一点点积累起来的,相信对你有帮助的。

    grails3.2.8-01

    grails3.2.8 part1

    grails中文入门简介

    比较难找的grails的资料,我也是找了很久才找到的。需要grails相关的拿走

    Grails1.1中文文档(CHM)

    Grails1.1最新 中文 文档 当今的Java Web开发技术显得过于复杂,相对于它本身的需要来说。现在主流的Java Web框架也是异常复杂,而且没有很好的遵循 Don't Repeat Yourself (DRY) 法则。 因此我们要以一种新的思维...

Global site tag (gtag.js) - Google Analytics