应用开发该选谁?

时间:2022-08-08 08:39:09

应用开发该选谁?

智能移动设备的多样性和相关标准的缺失决定了移动应用开发的复杂性,这使得移动应用平台的选择更为关键。

移动应用是一个正在迅速崛起的市场。随着智能手机和平板电脑的普及,很多企业开始将移动应用纳入企业的整体信息化战略中,而原本在移动应用上已有很大投入的企业(如保险行业)则在进一步深化移动应用,这在很大程度上推动了移动应用市场的快速成长;而另一方面,苹果公司的App Store获得巨大的成功引来了众多跟随者,Google、诺基亚、微软、惠普纷纷效仿App Store建起了自己的“应用商店”,这些“应用商店”为开发者提供了一个很好的展示和销售平台,极大地刺激开发者们的开发热情。苹果公司CEO乔布斯在iPad 2的会上就曾表示,从苹果公司2008年推出App Store以来,已经为App Store和Mac App Store向开发者支付了20亿美元的费用。

不过,无论是为企业制定移动应用战略的CIO,还是准备在“移动应用商店”应用的个人开发者,都面临着一个共同的问题,这就是应用平台的选择。因为与传统PC平台不同,智能移动设备种类繁多,还没有哪种移动操作系统拥有像Windows在PC平台上的绝对垄断地位,而在资源不足的情况之下,选择一种平台常常意味着放弃其他平台(用户),此时决策者就不得不多方权衡、综合考量。

选Andriod还是iOS ?

Andriod和iOS是当今移动应用中最为流行的两个平台,到底选哪一个常常是开发应用之前最先要面对的。

iOS是当下风头最劲的智能手机iPhone和平板电脑iPad的支持平台,其App Store也是最为成功的“应用商店”,苹果公司巨大的影响力以及iPhons和iPad较高的市场占有率,使得iOS成为开发者首选的移动平台。这一决策本身无可厚非,但决策者需要明白这一决定意味着什么,特别是那些准备通过苹果的App Store应用的开发者。

首先,基于iOS的应用主要的开发语言是Objective-C,这是一种对开发人员有较高要求的编程语言,对初学者而言有些复杂、繁琐,不过,也是一种很实用的开发语言,功能非常强大而且灵活,很受高水平开发者的喜爱。而且,相比Andriod平台,iOS在API接口方面更成熟一些,工具也更完善。同时,iOS采用的是本地码,与Andriod的虚拟机方式相比其效率要高出不少。

其次,苹果的iOS是一个相对封闭的开发体系。对开发者的限制较多,特别是要把应用到App Store时。比如,苹果公司会对的应用进行审核,如果认为不合适(可能根本就不给出很确切的理由)就会拒绝,可能是技术方面的(如危及系统安全),也可能是市场方面(如与苹果公司的某些产品功能雷同)等。此外,虽然苹果公司对App Store的应用程序提成高达30%,但它通常不会向开发者提供销售情况的统计数据,比如不会提供下载用户的姓名、邮件地址等。而且,对App Store的应用程序,开发者理论上可以自由定价,但苹果公司通常会建议你把价格定在10美元以下。尽管如此,App Store 2亿的注册用户和其完善的销售和支付渠道对于移动应用开发者无疑具有相当的诱惑力,尤其对涉足移动应用市场不久的公司或者个人而言,因为这可以让它们集中精力完善产品功能,而不是在市场拓展。

值得一提的是,iOS不支持Flash,这对于一些应用而言,可能不是一个好消息,所以在决策之前必须明白这一点。

相对iOS而言,Google的Andriod是一个开放的体系。由于Andriod基于Java,这使得它可以利用很多现存的Java开发环境,而且其应用开发也比iOS平台更容易,这就意味着开发人员相对容易找。而且,Andriod用户数正在不断增长。如今很多设备制造商推出了基于Andriod的手机和平板电脑,其市场占有率一直在上升,有人甚至认为Andriod在未来几年可能会远远超过iOS。另外,与App Store相比,Andriod平台对开发者的限制要少得多。而其不足在于,由于Andriod是一个开放的系统,使得很多手机制造商推出了定制的Andriod版本,这使得应用的可移植性成为一个问题。

第三条道路

在移动应用市场,除了最为流行的Andriod和iOS之外,还有微软的Windows Phone7、RIM的BlackBerry以及诺基亚的塞班等;如果只面向Andriod或者iOS开发移动应用,就意味着放弃了其他平台上的用户,而这在某些场合是不可行的。此时,除了再为每个平台开发一套应用之外,还有第三条道路可走,也就是开发跨平台的移动应用。

此时,HTML 5是最容易想到的跨平台技术。在PC平台,就有越来越多的Web应用基于HTML 5开发,以实现应用跨浏览器的呈现。在移动应用领域,目前也有一些开发者尝试利用HTML 5来开发基于移动浏览器的应用以实现跨平台,尤其是那些以信息为主的应用,HTML 5几乎是他们的必然选择。不过,这门技术要在移动平台上应用还有不足,特别是那些功能较复杂、有较多JavaScript脚本的应用要用HTML 5来开发,难度很高。但是,业内人士认为,未来HTML 5在移动应用中的使用一定会越来越普及。与HTML 5相似的还有J2ME,这也被很多人用来开发跨平台的移动应用,但是技术难度同样很大。

除了HTML 5和J2ME之外,还可以借助第三方的跨移动平台开发框架来减轻开发难度,特别是对于那些要利用手机外设的应用(如照相、GPS),那些跨平台的开发框架(如PhoneGap)已经预设了对这些功能的支持,可以大大减轻开发跨平台应用的难度。

当然,跨平台移动应用最终解决还得依赖于有关标准的制定,这无疑需要时间,但无论如何,PC应用的演进历史告诉我们,基于浏览器的应用可能是跨平台的最好选择。

上一篇:腾讯:开放是一场革命 下一篇:《计算机世界》第25期新闻素描(一)