在最近的GR8Conf Europe 2014期间,SpringSource/Pivotal的Groovy高级软件工程师 Cédric Champeau已经在Andriod上完成一次Groovy代码的现场pull请求的合并。 Groovy开发人员为了在Android上运行Groovy已经等待好几年了。因为各种困难,它的实现被推迟了,这包括Andriod Dalvik虚拟机的不同字节码和Groovy代码的动态特性等。官方对Android的支持可能在Groovy2.4版本。InfoQ采访了 Champeau,了解了更多的这方面的内容以及未来Groovy在Andriod系统中的发展。 InfoQ:让Groovy在Android上工作,最困难的部分是什么?
InfoQ:将来会考虑将这项工作扩展到iOS或者至少是Windows Phone来作为一中跨平台解决方案吗? 我肯定非常希望能在iOS上面看到Groovy的身影,但是我没有硬件设备去测试;)即使最近发布的Swift语言看起来与Groovy非常接近并且远远 比Object-C吸引人,人们仍然可以把它作为Groovy的一种替代。但是,我们还要考虑这样一个问题:Swift是由供应商封锁的闭源软件。相比之 下,Groovy则是完全开源的,如果你能在iOS和Android平台下用Groovy进行编码,举个例子来说,人们可能需要做的仅仅是重写他们应用的 UI部分就可以使他们的应用更适应大部分的手机开发。至于Windows Phone,我完全不知道这是否可行。实际上对于这个平台,我了解甚少。 InfoQ: 当前有哪些不足之处? 还有哪些是不能运行的?
InfoQ:对将来Groovy/Android的发展有何规划? CC: 官方对Android的支持会有第一个测试版的Groovy2.4。目前,你已经可以将其应用于自己的应用程序,并且实际上在第一个示例应用程序中,这已 经包含在产品中。([2])但是它仅是基于Groovy的一个快照版本。但我真的很想看看新的库或框架编写的Groovy是如何便利Android应用程 序的开发。Android非常啰嗦,Groovy则可以使编码更容易。为此,我们很多社区的开发人员已经写了大量的像这样的为Java开发的库,所以 Groovy的普及和发展只是时间问题。我相信一旦用户在Android上面体验到了Groovy,他们不太可能切换回Java;) [1] https://github.com/melix/groovy-android-gradle-plugin [2] https://play.google.com/store/apps/details?id=me.champeau.gr8confagenda.app |