众所周知当今写一个应用你需要有大的访问量的话必然要跨多个平台,移动端你起码需要覆盖android和ios平台,而你又不能忽略PC端的用户。如果你不考虑原生应用带来的性能和UI适配度,你当然可以基于浏览器核心来使用流行的Javascript+HTML5+Phonegap等封装成一个跨平台应用。但是Google的Gmail团队是个有追求的团队,它当然不会牺牲各个平台的性能和原生应用的UI适配度来做出compromise了。
那么如果给每个平台开发原生应用的话,对于google自身的安卓来说,当然需要用到的开发语言技术是Java了,而对于iOS来说,如果Swift没有被口水淹死而得以应用之前当然是Objective C了,对于Web,那毫无疑问使用技术将会是JavaScript/CSS/HTML5。
如果Inbox是微软做的话,我相信他们的开发团队毫无疑问会选择他们家的Xamarin基于C#,.net和Mono的跨平台开发框架来完成这方面的工作以达到一劳永逸的效果了。而对于Google来说,它当然不屑于用微软的框架,他们拥有自己的一套工具来实现跨平台。
Google的做法是使用使用一些工具实现了70%的代码跨平台复用。Inbox在各个平台使用的是相同的后台代码逻辑,但前端的UI因平台相关性会有所不同。Google 有自己的一套工具让他们只需要在安卓上使用Java开发一套后台代码逻辑,然后就可以将它们转换成对应的Objective-c和Javascript来适应iOS和Web浏览器:
- JavaScript的转换由Google Web Toolkit SDK来完成
- Objective-C的转换由J2ObjC来胜任
转载请尊重原创/译 | 微信公众号 | CSDN |
天地会珠海分舵 | 服务号:TechGoGoGo | http://blog.csdn.net/zhubaitian |
优秀资源推荐 | 地址 | 点评 |
DoctorQ博客 | http://testerhome.com/doctorq/topics
| 安卓自动化领域才俊,技术分享先驱, |