我知道这是重复的,但是自从一年多前提出这个问题以来,Grails 世界已经有了很大的发展,Eclipse 中的 IDE 支持也是如此,所以请不要盲目地关闭它。
我认为答案是肯定的,并且已经开始使用Grails 1.2.0开展一个新项目,并且对STS Eclipse Integration中的 Groovy/Grails 部分感兴趣。
我认为这个问题值得在 Grails 进化一年之后重新审视,当时答案肯定是混杂的。
因此,作为一名经验丰富的 Java Web 开发人员,我有这些问题,并且希望我的假设受到挑战:
- 与 Ruby 相比,Grails 现在值得还是自己动手?
- 它克服了错误的开始吗?
- 它真的能带来快速发展的好处吗? (我承认我现在很挣扎,我已经通过了广泛的基线配置来制作我的定制应用程序,它不是面向列表和页面的)
- 它是否适用于现实世界的生产应用程序? (感觉很重)
- Eclipse 插件是否比以前更好并且适合目的?(我认为还没有)
谢谢
编辑: 我边走边学,对于使用框架而不是框架功能本身,我有一些重要的抱怨。我之所以添加这些,是因为我认为它们应该是考虑因素,并且基于我的经验和观点,并且可能会帮助那些试图决定是否去圣杯的人。我也可能表明我对框架缺乏经验,所以这些都不是彻头彻尾的批评。我是一位经验丰富的开发人员,这就是我发现的:
调试真的很难。事实上,这几乎是不可能的,尤其是作为框架的初学者,这时你最需要你信任的调试器朋友。我花了比我应该的更多的时间来追踪代码中某些部分的语法错误问题,这些问题与引用域字段有关,这些域字段会导致堆栈中某处的静默失败。
坦率地说,日志记录很糟糕。你有两种模式,“没什么用”和“大量无用的东西”。单页请求后,我的调试日志为 128Mb,并且不包含任何关于我的错误的信息。在我看来,整个日志记录问题需要在框架中重新考虑。
STS Eclipse IDE 价值不大。除了语法高亮之外,它没有多大用处。您无法调试代码,因此它是一个美化的编辑器。代码提示不完整,据我所知,根本没有 GSP 支持。它也是我桌面上最慢的 Eclipse 插件 - 大约需要 2 分钟才能启动。它慢得令人震惊。我已恢复为文本编辑器(您会注意到所有在线教程视频也都这样做)和一些自定义语法高亮显示。
我对性能有一些严重的担忧。说得太早了,但我已经发现自己因为休眠而调整了数据库。也许这是意料之中的,但我确实必须保持我的域模型简单,以便约定产生高性能查询。
最后一个,逻辑域模型和物理数据库模型应该相同的约定不是明智的默认设置,在现实世界中也不太可能出现这种情况。我知道您可以将两者分开,但它会产生一定程度的复杂性,我认为如果扩展约定可以避免这种复杂性。没有足够的关于组合的文档以及你需要做些什么才能使其在实践中发挥作用。