一些基本事实引导我提出这个问题:
> 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应用程序框架!
最佳答案
Is it therefore possible to write Kotlin code in a Grails application?
当然.您可以使用Grails应用程序中的任何JVM语言.我在Grails中用Kotlin构建了一个概念证明,一切都如人们希望的那样:https://github.com/jeffbrown/langdemo