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

程序
WinterIsComing (31822)发表于 2015年02月05日 16时10分 星期四
来自Google有UI部门
开发一个移动应用如果你想要面向尽可能广的用户,你需要为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。

「星期四」 Hello Thursday

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

开发一个移动应用如果你想要面向尽可能广的用户,你需要为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。

WinterIsComing 发表于

2015年02月05日 16时10分