29

移动应用开发:Web,还是本地?

作者: baiyuzhong 分类:移动专区   阅读:13,218 次 添加评论

相对于本地应用,Web应用的开发和部署要更加便宜,但是它带来的用户体验是否能媲美本地应用?

几年以前,大部分移动设备都是非智能的,即使有一些智能手机,也只专注在Email应用上,而且没有成熟的触摸屏支持,显示的内容也只有简单的文本、链接和图片。苹果发布的iPhone改变了这一切。iPhone第三方应用原计划使用开放的Web技术。但3年前,本地应用还大行其道。不过本地应用存在两个问题:一、针对每一个不同的平台,都要利用本地语言,建立不同的应用,这会造成很高的成本。二、本地应用的性能优势,只是对3D游戏和图片处理应用而言,但是使用Web技术创建的商业应用,只有微不足道或者根本注意不到的性能损失。本文从几个方面探讨了Web和本地应用的优势和劣势,特别关注Web技术和本地技术已经相差无几的领域。

首先,在代码书写方面,如今很多开发者都使用C语言的扩展来书写本地代码。而很多开发者希望自己的应用能够运行在多个智能平台,但这需要掌握各个平台上的本地语言。每个平台的SDK各不相同,更增加了开发者的困难。但是每个平台都允许我们实例化浏览器实例。PhoneGap这样的工具就允许开发者使用HTML,CSS和Javascript创建程序,并且通过公共JS API调用本地设备的功能和传感器。

很多本地平台由很棒的用户界面控件和体验,但是没有哪两个平台的用户界面范例是一样的,甚至连相似都谈不上。而Web平台虽然能够保持一致性,但内置或SDK包含的控件数量有限,而且有时浏览器的不同也会造成麻烦,好在目前大部分设备都采用WebKit渲染引擎。

良好的用户体验对应用的成功至关重要。而移动软件用户体验可以分为两大类:情境部件和执行部件。作者详细分析了情境、硬件、平台惯例、环境和执行等方面。性能是软件开发的大敌。作者从延迟时间、执行时间的角度分别进行了讨论。在程序设计方面,本地应用能够很好地制作出滚动、弹出以及逼真的互动界面效果,而Web技术还没有办法在这个方面媲美本地应用,不过它们之间的差距在减少中。虽然本地和Web的争斗现在是难分难解,但是最有可能的结局是两者的混合解决方案。软件开发者们不应该只是跟随趋势,也应该致力于缩小Web和本地技术的差距。

节选自Communications of ACM 5月刊,感谢译者卞斌的支持。


本文选自《程序员》杂志2011年6期,更多精彩内容敬请关注6期杂志

《程序员》杂志订阅火热进行中


转播到腾讯微博

----->立刻申请加入《程序员》杂志读者俱乐部,与杂志编辑直接交流,参与选题,优先投稿

11 Responses to “移动应用开发:Web,还是本地?”

  1. yumeng 说道:

    “在程序设计方面,本地应用能够很好地制作出滚动、弹出以及逼真的互动界面效果,而Web技术还没有办法在这个方面媲美本地应用 ” 不认可

  2. yumeng 说道:

    本地以及web的区别主要在于数据存储的区别,依然是多用户以及单用户的互动区别,其他都不是问题

  3. clonne 说道:

    没用本地的支持WEB就是扯淡。
    WEB只是累赘,用WEB替代本地更是蠢B举动

  4. 模具清洗剂 说道:

    使用WEB吧,我喜欢。

  5. www.dnstx.com 说道:

    呵呵 不错呀

  6. jisuanji 说道:

    真的很好啊。。

  7. 小葵 说道:

    厚颜无耻的宣传下小妹的创意分享小站:品趣轩:) 每日推荐一款能买到的创意,欢迎大家有事没事儿来溜溜,今日推荐:禁锢骷髅杯 Doomed Crystal Skull Shot Glass http://www.pinquxuan.com

    小站定位:每日推荐一款能买到的创意,坚持原创,坚持高品位!

    小站非盈利 多谢管理员哥哥手下留情

  8. www.weihaiseo.com 说道:

    不错哦!!!!!

  9. tomli 说道:

    本地!!

  10. Products 说道:

    值得关注啊。。。。

请评论

preload preload preload
京ICP备06065162