Google Inbox如何做到在Android、iOS和Web上共享70%的代码

jopen 9年前

开发一个移动应用如果你想要面向尽可能广的用户,你需要为Android开发一个,iOS开发一个,Web开发一个。为每个平台开发一个版本意味着三倍的 工作量,三倍的bug处理量。令整个事件变得更复杂的是,三个平台必须使用不同的语言开发:iOS是Objective-C/Swift、Android 是 Java,而Web是JavaScript/CSS/HTML5。在开发Google Inbox时,Google采用了一组工具让它能在三个不同平台之间共享70%的代码。它的工具就是开源的J2ObjC,顾名思义它将Android的 Java代码翻译成iOS的Objective-C代码。Google Sheets就用了J2ObjC,但Inbox是至今使用J2ObjC的最大项目。J2ObjC没有翻译UI部分,除了翻译底层的相同功能,为了更好的用 户体验每个平台仍然使用了原生的UI。

来自:http://www.solidot.org/story?sid=42959