Java,在开发过程中使用Groovy(Grails)只是为了能够在不重新编译的情况下测试代码?

我使用Spring MVC进行Java Web开发工作,基本上我被迫做一个敏捷类型的开发,我必须进行很多小的更改,有时我最终会浪费很多时间来编译每次改变(我为一家初创公司工作,我没有足够的时间进行单元测试等,这不是理想的,我不一定计划长期留在公司,但我只是在寻找方法更适应当下)。 我正在努力的应用程序需要快速,并且它进行了大量的高容量数据处理(它是一种搜索引擎,但不是网络搜索引擎)所以它必须是生产应用程序的常规编译Java,但我我想知道我是否使用Groovy和Grails,或类似的东西进行开发,如果我可以把它写成常规Java,然后实时测试代码而不必重新编译。我想知道这样做会有多少努力,只要它能够像编译的Java一样工作。很抱歉,如果这是一个新手问题我不知道在哪里寻找有关这方面的信息,因为大多数关于Grails的东西似乎更适合模仿脚本语言,而不是我想要使用它。     
已邀请:
敏捷是一种心态,它与编程语言或框架无关。我没有足够的时间不做单元测试。 如果您使用Java编写代码,则使用Java编写代码,而不是使用Groovy编写代码。 Groovy是Java的(几乎)超集,因此理论上你可以在Groovy中编写类,然后将它们编译为Java,但这种方法存在许多问题: 1)在你的代码中滑动一些不正确的Java很容易,闭包只是有用的:-) 2)Grails不容易转换为Spring MVC,所以你也必须重写那个位。 所以,我个人不会使用Groovy / Grails。 当你说编译时,你真的是指建立战争并重新部署吗?大多数IDE(Eclipse,Intellij等)在保存文件时重新编译一个类,因此没有延迟。假设您正在使用这样的IDE,您可以在Eclipse中运行您的(Tomcat)服务器,并自动重新部署内容,并在必要时自动重启Tomcat。 如果这仍然不够快,我推荐JRebel,这是非常好的,我分发了真钱来获得许可证。使用JRebel意味着您(通常)甚至不需要重新部署。您在IDE中更改了Java文件,并且无需重新部署即可在服务器中进行更改。我会极力推荐它。 我要做的另一件事是为你的代码编写单元测试。您无需检查它们,但它们是一种有助于提高工作效率的工具。     
我在这里要做的是在java代码中嵌入groovy脚本,如下所述: http://groovy.codehaus.org/Embedding+Groovy 通过这种方式,您可以更改您的groovy代码,而无需重新编译。我们在上一个遗留应用程序中使用了这种技术,需要花费10-15分钟来重新编译和安装。 Groovy在JVM中运行并动态编译为字节码,因此无需担心它的“生产性”。     

要回复问题请先登录注册