可以在Grails中使用Kotlin吗?

时间:2017-07-14 00:02:16

标签: java spring grails groovy kotlin

引导我回答这个问题的一些基本事实:

  • Groovy具有完整的Java互操作性
  • Kotlin具有完整的Java互操作性
  • Kotlin也编译成Java

因此可以在Grails应用程序中编写Kotlin代码吗?

我在Grails 2.x上做了很多工作,最近在一份新工作中,我一直在与Kotlin,Spring和Struts合作。我真的喜欢Kotlin的零安全性和类型推断功能,而Kotlin的功能编程功能比Groovy更自然,更易于使用(最后一部分是纯粹的意见)。

是否可以使用Grails处理以下内容:

  • ORM
  • 将请求映射到控制器/操作
  • JSP / GSP视图解析/呈现

但是使用Kotlin来编写域类,控制器动作,服务,对象工厂等的实际逻辑。

可能不太可能,因为我猜测Grails的某些核心功能是通过动态类型实现的,但也许可以通过Gradle插件或直接的Grails插件实现。

我喜欢Grails的约定配置范式所提供的极端简洁性,但我更喜欢Kotlin的静态类型和类型推断。

如果我可以在Grails环境中在Kotlin中编写业务逻辑,那么对我来说,这将是最终的Web应用程序框架!

1 个答案:

答案 0 :(得分:13)

  

因此可以在Grails应用程序中编写Kotlin代码吗?

当然。您可以使用Grails应用程序中的任何JVM语言。我在Grails中用Kotlin构建了一个概念证明,一切都有所希望:https://github.com/jeffbrown/langdemo