j2objc_Google工具J2ObjC将Java转换为Objective-C

j2objc

地狱冻结了吗? 昨晚,Google 发布了一个开源命令行工具,用于将Java代码块翻译为Objective-C,从而使将Android应用程序移植到iOS更加容易。

J2ObjC当前处于 “ alpha和beta品质之间”,使Java代码成为iOS应用程序构建的一部分,而无需对生成的文件进行任何额外的编辑-从理论上讲。 它显然已经在多个Google应用程序中使用,尽管他们警告说每个新应用程序都倾向于发现“需要修复的新错误”。

虽然主要是旨在帮助将Android应用程序移植到iPhone和iPad等iOS平台的工具,但没有理由不能使用J2ObjC将为非Android应用程序编写的Java转换为Apple平台。

当然,Objective-C是Mac OS X应用程序和iOS应用程序的首选语言-尽管考虑到Java应用程序在OS X上运行得很好,而无需进行任何修改,但这可能不太有趣。

值得注意的是,这不是将Android应用程序直接移植到iOS的神奇翻译器。 该项目的Wiki页面强调说,J2ObjC“不提供任何与平台无关的UI工具包”,并且“ iOS UI代码需要使用Apple的iOS SDK以Objective-C或Objective-C ++编写”,这意味着仍然需要Objective-C知识。

J2ObjC“支持客户端应用程序开发人员所需的大多数Java语言和运行时功能,包括异常,内部和匿名类,泛型,线程和反射”,但最有趣的技术细节是如何处理内存管理:毕竟,Objective -C缺少Java的便捷垃圾收集功能。

该工具利用内存管理的三种本机OS X方法之一:引用计数,垃圾回收或较新的自动资源计数(ARC)。 Wiki中页面更详细:

J2ObjC会根据选择的方法生成不同的内存管理代码。 默认情况下,它当前在自动释放池中使用引用计数。 但是,使用-use-gc标志进行翻译,并创建使用垃圾回收的代码。 最后,有一个–use-arc选项来生成使用ARC的代码。 当它变得更标准时,它将成为默认值。

项目的源代码托管在基于Apache License 2.0的Google Code上。 如果您愿意,请在下面留下您的想法与评论。


翻译自: https://jaxenter.com/google-tool-j2objc-translates-java-to-objective-c-104932.html

j2objc

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值