【2013年7月17日 51CTO外电头条】我是Houssem Della,一位Windows Phone开发人员;一同参与本文撰写的还有我的同事Zied Jaballah,一位Android开发人员。
我们之所以合作撰写本文,是为在突尼斯举办的Droidcon大会研讨环节准备发言材料。
这篇文章比较特殊,因为我们并不打算仅仅把着眼点放在Android身上。我们还将讨论Android的主要竞争对手之一——Windows Phone。下面我们就一同从开发人员的角度,对两款平台的优劣进行一番品评。
此次比较的主题是什么?
首先,我们将探讨在线商店与两套平台给开发人员带来的盈利机会。接下来,我们会比较两款平台各自所支持的设备数量及类型。然后是在Visual Studio与Eclipse之间分析各自特性。当然,我们还会通过两款平台的模拟器归纳它们的响应效果与实际表现。接下来是比对谷歌与微软两家巨头在设计指导方针领域的差别。最后,我们将以平板设备作为收尾。
1 – 在线应用商店
Houssem: 我们先从在线应用商店入手,看看谷歌的工程师们为我们打造了什么样的产品发布平台。
Zied: 谷歌的在线应用商店被称为Google Play,其中包含有约七十万款应用程序,全球用户总下载量已经达到250亿次。Houssem,微软的在线应用商店又是什么样的状况?
Houssem: Windows Phone Marketplace目前的应用程序数量超过13万款,虽然在数量上还无法与Android阵营比肩,但我们需要的常用软件都已经有所收录。
Zied: 要在在线应用商店中发布Android应用程序,我们需要拥有Google Play账户、要价25美元。在微软方面,要想获得开发者账户需要支付多少钱?
Houssem: 此类账户分为两种:开发者账户要价49美元,企业账户则需要99美元。
Zied: 要想在Google Play上发布自己的应用产品,我们需要经过审批流程,但其耗时仅为15到30分钟。这样高效的审批机制在微软方面恐怕无法实现。
Houssem: 微软的审批流程一般要花上五天左右。如果大家的应用产品遭到拒绝,微软会提供一份错误报告,引导开发者纠正其中的问题。Zied同志,谷歌高效审批的背后不是也引发了全球范围内的“恶意软件”风潮么?
Zied: 没错,Houssem同志的说法确实无可辩驳。Google Play中充斥着大量恶意软件,这一方面是由于Android开发者群体庞大、另一方面也确实说明目前这种快速审批流程存在极大漏洞。事实上,谷歌的审批流程更像是一种政策形式而非苹果及微软那样脚踏实地的严格验证。谷歌倾向于先把开发者的应用放进商店当中,然后再对商店整体进行恶意软件扫描。去年二月,谷歌创纪录地从应用商店中删除了6万款应用程序。
Houssem: 谢天谢地,Windows Phone Marketplace中的恶意软件并未如此夸张。微软的在线应用商店仍然值得信赖!
2 – 设备
Zied: 好,现在我们一起来看设备话题。你知道吗,Android阵营拥有数量最多的设备支持数量,而且包括三星、LG、摩托罗拉以及谷歌自己等一系列制造商都在生产Android产品。可以说Android阵营下的设备从低端到高端皆有涉猎,而且任何人都有能力购买一台Android产品。Windows Phone的情况又如何?
Houssem: 目前已经有多家知名企业开始在设备中使用Windows Phone系统,包括诺基亚、三星、HTC以及LG等。微软希望为用户带来更出色的使用体验,因此Windows Phone只运行在高端设备之上。相比之下,Windows Phone产品的售价普遍偏高。
3 - IDE
Houssem: 到目前为止,我们已经探讨了应用商店与设备两个话题,下面再来看IDE。要开发Windows Phone 8应用程序,大家需要Windows Phone版本的Visual Studio 2012 Express。这是一款免费免费IDE。Zied同志,Eclipse的情况又是怎样?
Zied: Eclipse是Android应用开发领域使用最广泛的IDE方案。它是一款免费的开源软件,而且对运行环境没有什么特殊要求。(说到这里,Zied向Houssem露出了胜利者的微笑——哦耶。)
Houssem: 好吧,Windows Phone版本的Visual Studio 2012 Express在运行条件方面有些困难。事实上,它对硬件及操作系统类型都有明确规定:在硬件方面,我们需要一台支持硬件虚拟化的计算机,而这种特性只在新型PC设备上方可实现。而在操作系统方面,我们需要使用Windows 8,传统的Windows 7或者Windows XP则不受支持。另外,大家还需要使用正确的Windows 8版本,即专业版或者企业版而非基础版。不仅如此,我们还必须使用64位版本的Windows 8,32位版本不受支持。
Zied: 总而言之,大家只有在非常幸运的情况下才能恰好满足这么一大堆要求;不过Eclipse则不会这么为难开发者,它惟一的要求就是用户需要在操作系统下安装JVM。事实上,只要搭配了JVM,Eclipse根本不管你的操作系统是Windows、Mac还是Linux——通吃无误。
Houssem: 众所周知,Visual Studio能为开发人员提供出色的使用体验:调试机制简单而高效,能帮助大家迅速找出错误并加以修复。
Zied: Houssem同志,你在这方面可以笑到最后了。Visual Studio在调试机制方面的表现远远优于Eclipse。不过Eclipse让我最为喜爱的特性在于其庞大的插件阵营。在Eclipse与插件的配合下,我们几乎可以实现自己脑中的一切构思。Visual Studio是否拥有插件?
Houssem: 当然啦!Visual Studio同样拥有大量插件,且其中多数都是开源方案。更令人振奋的是,我们可以直接在Visual Studio中搜索、安装并更新这些扩展内容。
4 – 模拟器
Houssem: 好的,现在我们再来谈谈开发人员所关心的另一款工具——模拟器。
Zied: Android模拟器的运行速度确实堪忧,很多开发人员都不得不忍受其缓慢的执行速度。不过谷歌公司已经在快照选项与硬件加速方面取得了一定进展,使用新型设备的用户应该能从中受益。另外还有一个名为Android x80的开源项目,能够在虚拟机环境下快速运行、从而充当模拟器的理想后备方案。让我们看看微软的工程师们拿出了怎样的解决办法?
Houssem: Windows Phone模拟器运行速度非常理想。它利用hyper-v实现虚拟化功能,从而提供了出色的操作响应能力。
5 – UI设计
Zied: 好吧,我承认Android模拟器跟Windows Phone比起来确实更让人抓狂。我也承认微软的产品在设计上也确实比较用心。
Houssem: 我很赞赏你的真诚。事实上,Windows采用了全新的图形风格,也就是Modern UI设计。这套风格基于“内容高于效果”的设计理念,意味着我们更关注内容而非主题、色彩及图形等表现形式。Modern UI设计在指导方针上存在诸多限制,但相关模板与控件足以帮助我们创建出漂亮的应用程序外观。再有,作为Windows Phone开发人员或设计师,我们还能享受到Expression Blend带来的便利。Blend是一款专为设施师打造的IDE,为不喜欢Visual Studio内置工具的人士提供另一套方案。只要熟悉了这些指导方针,普通开发人员也能在无需设计师辅助的情况下拿出做出的设计成果。设计时间数据的引入从另一个侧面改善了设计体验,我们能够从设计耗时的角度出发了解自己的设计工作中的思路与实施步骤。
Zied: 开发者们对于Android环境下的设计机制不太满意,大家必须根据需要编写大量XML,而拖拽工具也很难赢得使用者的青睐。不过只要突破了XML设计这道难关,开发人员即可上九天揽月、下五洋捉鳖。谷歌也提供自己的设计指导方案,但相对微软而言更为自由、并无太多限制。
到到此为止,我们已经讨论了应用商店、IDE、模拟器、设计以及设备几大话题。当然,设备不仅仅指智能手机,也包括平板领域。
6 – 平板设备
Houssem: Windows平板使用的并不是Windows Phone操作系统,而是搭载WindowsRT。Windows RT是一款轻量级版本的Windows 8,专门针对平板设备所设计。它无法运行.exe文件,而只能支持Windows应用商店中的程序。不过微软还带来Surface Pro产品,能够运行标准版Winodws 8与.exe文件。值得一提的是,有八成Windows Phone API都源自Windows 8 API,因此大家能够轻松在Windows Phone与Windows 8之间实现代码共享。
Zied: Android系统同时作用于智能手机与平板设备。从3.0版本以来,谷歌公司向系统中添加了大量API以提升大尺寸屏幕的显示效果,因此平板上的活动栏与碎片化状况给应用程序带来种种有趣的影响。
总结
总体而言,Windows Phone在某些分项中获得了优胜,而Android则在另一些分项中力压对手。我们无法笼统地指明哪个阵营是最后的冠军,因为我们相信用户根据实际需求做出的判断才更具说服力。