J2ObjC 1.0 发布,将 Java 转换为 Objective-C
2016-03-28 16:50
453 查看
J2ObjC 是一个Google开发的开源工具,用于将Java代码转换为Objective-C代码。其目的是为了能在iOS平台上重用Android平台、web服务器端的Java代码。服务器端代码的转换由 GWT 完成。J2ObjC并不转换UI代码,这部分需要针对不同平台分别开发。
我们在2012年发布了J2ObjC的alpha版本,并公布了部分实现细节。J2ObjC的逐渐发展到稳定版1.0版本,并应用于开发Inbox、Calendar、Docs、Sheets、Slides和Google My Business等Google产品的iOS版本。同时,J2ObjC由Java 6升级到Java 7和Java 8,该项目的Google工程师Tom Ball表示这是为了“支持当前和过去主流的Java、iOS和Xcode发布版本”。此外,J2ObjC集成了JUnit、Mockito、Gradle和Maven,并支持 通过原生方法将Objective-C代码嵌入Java代码 。
在被问到J2ObjC对Java 8的支持程度时,Ball告诉我们:
这取决于怎么定义"Java 8"。:-)我们加入了对Java 8一些语言特性的支持,如lambda表达式和方法索引。但是因为我们的JRE运行时基于Android的 libcore库 ,所以目前还不支持任何Java 8引入的API。我们计划与libcore团队定期同步,这样他们添加的所有Java 8支持都能很快地被引入到J2ObjC的运行时。
谈及未来发展,Ball补充道:
J2ObjC主要是一个构建工具,因此会根据使用该工具的应用开发人员的需求来确定未来计划。我们现在了解到的需求是,他们希望我们持续且快速地支 持iOS新特性、优化Swift互操作性、支持Java 8接口、提供更好的工具集成、减少构建次数。作为编译器开发工程师,我们也会专注于优化生成的代码和快速修复bug。
J2ObjC使用Apache License 2.0许可协议。
查看英文原文: Google’s J2ObjC 1.0 Translates Java into Objective-C
中文翻译:http://www.infoq.com/cn/news/2016/02/j2objc
我们在2012年发布了J2ObjC的alpha版本,并公布了部分实现细节。J2ObjC的逐渐发展到稳定版1.0版本,并应用于开发Inbox、Calendar、Docs、Sheets、Slides和Google My Business等Google产品的iOS版本。同时,J2ObjC由Java 6升级到Java 7和Java 8,该项目的Google工程师Tom Ball表示这是为了“支持当前和过去主流的Java、iOS和Xcode发布版本”。此外,J2ObjC集成了JUnit、Mockito、Gradle和Maven,并支持 通过原生方法将Objective-C代码嵌入Java代码 。
在被问到J2ObjC对Java 8的支持程度时,Ball告诉我们:
这取决于怎么定义"Java 8"。:-)我们加入了对Java 8一些语言特性的支持,如lambda表达式和方法索引。但是因为我们的JRE运行时基于Android的 libcore库 ,所以目前还不支持任何Java 8引入的API。我们计划与libcore团队定期同步,这样他们添加的所有Java 8支持都能很快地被引入到J2ObjC的运行时。
谈及未来发展,Ball补充道:
J2ObjC主要是一个构建工具,因此会根据使用该工具的应用开发人员的需求来确定未来计划。我们现在了解到的需求是,他们希望我们持续且快速地支 持iOS新特性、优化Swift互操作性、支持Java 8接口、提供更好的工具集成、减少构建次数。作为编译器开发工程师,我们也会专注于优化生成的代码和快速修复bug。
J2ObjC使用Apache License 2.0许可协议。
查看英文原文: Google’s J2ObjC 1.0 Translates Java into Objective-C
中文翻译:http://www.infoq.com/cn/news/2016/02/j2objc
相关文章推荐
- NSObjCRuntime, NSZone, NSObject报错Unknown type name 'NSString'
- 懒加载 warning: could not load any Objective-C class information. This will significantly reduce the qu
- Non-Maximum Suppression for Object Detection in Python
- Object-C 中 的重要类型
- Object-C基础(15)——NSBundle与对象归档
- WaitForSingleObject函数的使用
- Object对象转换成json
- Object-C基础(14)——文件
- Object-C基础(13)——字典与谓词
- 集合类(Objective-C & Swift)
- 快速理解Runtime of Objective-C
- 论文阅读笔记:You Only Look Once: Unified, Real-Time Object Detection
- Object-C基础(12)——容器
- javascript下用ActiveXObject控件替换word书签,将内容导出到word后打印第1/2页
- php 执行mssql 里的语句,报错 The EXECUTE permission was denied on the object
- Objective-c中 isEqual ,isEqualToString , == 三者的区别
- Object-C基础(11)——字符串、日期相关类与拷贝
- IOS 中 For( ; ; ) For( in ) enumerateObjectsUsingBlock效率问题
- Attach、Detach和DeleteObject
- Objective-C中的instancety和id的区别