BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

观点:Tim Bray谈移动应用的Web与原生之争

| 作者 Jean-Jacques Dubray 关注 3 他的粉丝 ,译者 郭晓刚 关注 0 他的粉丝 发布于 2011年6月17日. 估计阅读时间: 4 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

Tim Bray不久前在西雅图Android开发者群组会议上论及移动应用的Web与原生之争,他详述了双方的众多论点论据,但并没有彻底倒向任一方。他首先来了一段自白:

我是搞Web出身的……从1994年起就靠它吃饭,中间还小赚了几笔。所以我懂Web,我喜欢它,我感激它。

首先,他请大家承认下述现状:

移动设备上几乎所有应用都需要使用网络,而它们几乎都是经由HTTP实现的。

所以他认为,几乎所有移动应用都是Web应用。只不过大家一般所说的“Web Apps”,其实是指用HTML、JavaScript和CSS编写的移动应用。而原生应用

载体是经过编译的代码,与CocoaTouch、Android、WinPhone7之类的框架打交道。

Tim Bray解释,游戏多用原生技术编写的主要原因,是为了能够重用Unity、Unreal之类现成的游戏引擎。本质上,Android和iOS可以在这个层次上共享C代码。

Web技术的最大好处,是像游戏引擎一样,可以跨平台重用客户端代码。他认为,假如维持两大主流平台的状况,Web技术在跨平台重用方面的优势不明显。但如果市场较为分裂,应用开发者需要支持Windows Mobile 7 、RIM、WebOS等平台,则Web技术将大展拳脚。

他指出Web技术当前存在若干实质障碍,如性能和访问内置硬件功能的方面,但并非不可克服。他个人认为Web技术的真正问题是在工具和文化层面。

Android和iOS框架经过其精干开发团队的精准设计,开发者可以轻而易举地用它们创造出吸引人的原生应用。

也许Web框架的繁盛反而成了它自己最大的敌人:

这是一个两难选择,以[专门搜集各种JavaScript库的]EvetyJS网站为例,它列举了21种不同的JavaScript工具包,我敢说其中大部分都是相当优秀的,但我也敢说除了这21种,还有更多我从来没听说过的。那么,你准备押宝哪一种?

他的结论是虽然Web框架得到很大投入,“但浏览器还远远没有跟上的迹象”。

Tim提醒说,PhoneGap和Appcelerator希望提供一种方案让开发者既能够用Web技术编写跨平台共享的代码,又具备原生的外观和进入应用商店的能力,但这条路线“非常难,比表面上看要难得多”。

Tim举出他自己使用“Trip It”应用的情况作为案例。“Trip It”应用同时提供了原生和Web两种版本,但并没有这样做的明确理由 ,因为它需要用到的一切能力,Web框架都能提供。可是Tim的答案跟很多智能手机用户一样:

我提供又一件证据:在手机上,我每次都用[Trip It的]原生应用,从来不用网站。还有,我是它的付费用户,促使我跨过收费门槛的,恰好是原生应用的流畅感。

智能手机是一类相当复杂的机器,每天都有成千上万的开发者为它创造一种新类型的应用程序——“融合应用(converged applications)”。这类新应用常常戏剧性地改变我们的生活,医疗、位置相关商业、社交网络、金融(通过手机收款和支付正日益普及)、娱乐……各领域达到的便利程度甚至连两年前都无法想象。虽然各种应用都离不开HTTP,但其实设备本身还使用了一系列预设前提与Web迥异的电话通信协议,Web几乎总是假定设备拥有持续的网络连接和电源,而这些通信协议则为双向通信、网络鉴权、小额支付、电源和带宽消耗等方面优化。

消费者会不会继续偏好原生应用和应用商店的便利?抑或消费者其实希望脱离蛮横的收费模式,宁愿接受Web和熟悉的广告?你是像Tim一样举棋不定还是早就下定决心?你自己用原生应用多还是Web应用多?

查看英文原文:Opinion: Tim Bray on the Web vs Native Debate

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

面临同样的问题 by 吴 力华

在企业移动应用中这个问题很突出,用原生应用,要面对不同的设备,成本高。用WebApp,效果又没那么好。现在已经有厂商支持通过中间件将一个现有应用转成支持不同设备的原生应用,但这个有这么美妙么...

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT