近日,GQueues(集成了数个Google服务的在线任务管理器)的创始人与开发者Cameron Henneke将其应用的HTML5移动版本移植到了iOS与Android上,他记录了在这两个平台上的开发工作量并在博客上对结果进行了比较。下面的内容摘取自Henneke的调查结果,并从InfoQ的访谈中摘录了部分内容。 之前的经验 虽然在软件开发方面已经有超过12年的经验,不过Henneke说他对iOS与Android却没什么经验,从他的角度来看,这两个平台对他来说处于同一个水平之上: 在开始开发这个应用时,我完全是个Android新手,甚至在这个项目之前我都没有在电脑上安装过SDK。同样,我在iOS上也 是个十足的新手。我在2010年那阵儿曾创建过两个简单的iPhone游戏,不过他们的复杂性无法与GQueues应用相提并论,并且使用的APIs也完 全不同。从那之后我就再没碰过iOS开发,直到今年3月开始GQueues项目为止。 开发 Android
iOS
总的来看,Henneke在iOS上的学习时间是Android上的两倍。 关于学习资料,Henneke觉得Android文档的质量要高于iOS的。Android的开源特性也有很大的好处,他可以阅读代码并从中学习。关于iOS文档,他说到: 虽然iOS文档的扩散速度很快,不过由于iOS 5到iOS 6有很多重大的变化(比如说自动引用计数的引入),因此不少内容都过时了。很多代码示例(包括Apple官方示例)以及解决问题的方式都不太准确,我们应该使用更新的方法进行处理。这种筛选花费了我不少时间。 虽然Android开发要对“之前HTML 5移动Web应用所用的后端服务器同步代码”进行完全的重写,但是相比于iOS,Henneke为Android编写同样应用所需的时间减少了10%。下表展示了总体的开发统计:
工具 虽然从个人角度来说更喜欢Vim,不过Henneke还是记录了项目中所使用的如下一些工具的情况:
|