一度开发IOS程序只有objective c、unity3d、cocos2d等选择。我想对于JAVA开发者来说,无论是C++、C#还是objc都无法与最纯正面向对象的语言相比。这也是很多android、J2ME开发者止步于IOS开发的原因。现在好啦,JAVA开发IOS程序将日趋成熟!
Libgdx ,2012年下半年,著名的跨平台游戏引擎Libgdx开始支持IOS。不用过多介绍,优雅的架构、完善的调试工具、大量的商业项目应用充分说明了它的稳定与强大。Libgdx主要优点是跨平台(很多android游戏采用此框架),调试极其方便,专门针对游戏的API也非常全面,而且文档全面、社区支持相对到位。目前Libgdx是通过monotouch实现JAVA编写IOS程序的,弊端是必须购买monotouch证书,价格不菲,配置开发环境也相对麻烦。IOS下开发IDE不是很清楚,难道是MONO?
RoboVM,这个项目最近才映入大家眼帘。它是通过LLVM将java优化转换为objc本地代码执行,之前也有针对android的支持,不过支持IOS的版本不兼容android,不过呢,既然采用java开发,该语言其本身的优势其实就是跨平台。RoboVM优点是JAVA原生支持,甚至提供eclipse开发插件(这一点非常人性化),成本也低,不需要购买额外的任何授权(苹果保护费除外)。缺点也显而易见,配置开发环境非常繁琐,且文档很少(压根没有文档我会乱说?笔者好不容易摸清如何配置环境,然后看着一堆没有DOC的类内流满面),且游戏API支持相对较弱(目前正在完善对OPEN GL ES的支持)。不过相信在外界不断地关注下,RoboVM会越来越完善,我们拭目以待吧。
什么?有点小失望?觉得目前还是无法完美用JAVA开发?等等,我忘了告诉你,最近爆料Libgdx与RoboVM合作了,也就是说,不久的将来会迎来基于RoboVM的Libgdx!是的,又免费又完善又强大又可以用eclipse开发!这简直是吊炸天的好消息!我关注这两个项目的作者们很久,他们绝对是行动派!让我们期待这对基友擦出爱情的火花吧!