gradle 混合編程java、scala、kotlin、groovy

        眾所周知,java是基於JVM的開發語言,但能夠在JVM上運行的開發語言不僅僅有java,目前還有很熱門的kotlin(kotlin不僅僅只能開發Android)、scala、groovy等等。
目前中國主要的web開發語言還是以java居多,作為主流的面向對象開發語言,不可否認能夠被工業社會所全面接受是有其優勢的。但是從另一方面來講,作為OOP也有其自身的局限性,即使官方也在積極的擴展java的各種功能,比如lambda的支援等,但這種閹割版的「FP」用起來差強人意,對於一些熱衷於FP的開發人員,是滿足不了他們的需求的。因此一種新的「混合式編程」便應運而生。
        所謂的混合式編程,就是在同一個project(module)中整合進多種開發語言(基於JVM),在開發過程中根據模組的特性選擇不同的開發語言進行開發,開發完成之後使用不同的編譯器編譯為符合JVM規範的class文件並打包運行。這樣在項目開發的過程中,就可以在不同的功能中使用不同語言的特長,充分發揮不同語言的特性。
       目前做了一個java、scalak、kotlin、groovy整合在一起的module模板,有興趣的可以參考下。項目使用的版本管理軟體是gradle,分為groovy DSL版本和kotlin DSL版本,主要區別在於build.gradle支援的DSL腳步不同。

git地址:

  gradle kotlin dsl版本

  gradle groovy dsl 版本

兩個module都已經整合進了四種開發語言,並可實現相互的調用。