VisionMobile在7月29日推出博客Web Site vs. Web Apps: what the experts think

“Web应用”术语在过去几年已到处出现,我们都听说过,使用过,到底有多少次已经记不清了。然而,在哪里中止“Web网站”,在哪里开启“web应用”仍有争议。客席作家Ciprian Borodescu介绍几位web技术领域著名人物的见解,并讨论web应用化(app-ification)。

Web网站和web应用的定义

web网站已如此深深渗入日常文化,无法想象没有它们的生活。尽管作为一名开发者,我发现很难记起在童年什么时候,我胖乎乎的小手仍不知道如何键入。在过去20年,互联网发展,膨胀,爆炸,已无法忽视,任何没有互联网连接的键盘几乎无用。

在过去几年,网络出现了令人兴奋,同时令人迷惑的新术语“web应用”。

但是,什么是web应用,它和web网站有什么区别,为何它很重要?

了解差异是否最终使我们成为更好的用户或开发者?一个业务是否作为web应用在线呈现而取代web网站作为营销卖点,就可以繁荣。

为了明确网站和web应用的边界,我访问了几位web技术领域的杰出人物,以他们的经验和专业知识帮助引导讨论。他们是Dominique Hazael-Massieux(移动web倡议活动引领互联网联盟),James Pearce(Facebook的开发者宣传主管),Michael Mullany(Sencha的CEO),Christian Heilmann(Mozilla公司HTML5/Open Web的首席开发者宣传官),以及Stephen Pinches (金融时报移动&新兴平台的ELT at Pearson plc和集团产品经理的技术学习主管)。在这篇文章中,我将他们的专业意见整合起来帮助得出网站还是web应用的结果。

网站和web应用的差别

在前应用商店时代,应用已经用于web网站,提供更好的用户交互和能力,而之前只能通过安装软件来实现。早期的web应用包括webmail,Google Maps,和Google Docs。和传统的网站相比,如博客和新闻网站,web应用提供了更丰富的用户体验和访问更先进的浏览器能力。

如今,单网页网站仍可被视为web应用,但它更多地关注任务,而不是技术本身。从这个角度来讲,正如Christian Heilmann解释:“应用的使用场景通常是用它做某事。”

如果你想想智能手机或平板,以任务为中心的web应用就很容易理解:一个应用的目的是为了特定任务,例如打个电话,检查邮件,或者找附近的的士。

有人会认为我们可以简单地作区分,web网站是只读,而web应用是可读可写。这看起来当然足够简单:web网站是用来消费,web应用是用来创造。它听起来对吗?

对于开发者,如果考虑技术差异,很容易在web网站和web应用之间划分界限。web应用有些明确属性使其接近原生应用:

■ 自给自足

■ 丰富/互动用户界面,可模仿设备上的原生界面

■ 使用先进的设备能力,如地理位置,摄像头集成,或其他的有W3C设备APIs和Policy Working Group正在发展的技术

■ 面向动作,而非面向信息

■ 不严重依赖(或者可能时隐藏)浏览器Chrome(后向按键,重载按键,地址栏)

■ 可离线工作,例如使用HTML5的应用存储、本地存储和索引数据库。

Mozilla的Christian Heilmann认为离线属性就定义而言不是必须的技术,而是重要的使用区别:“看看我们的连接是多么不可靠,我在飞机上写这些,我们的应用应尽可能地有效,这意味着,我们不应该依赖于连接。尽管离线,界面应该能使用,当我们上线时,应马上同步。”

但是我们如何向非技术用户解释差别?我们需要这样做吗?

跟据Dominique Hazael-Massieux,一个网站只要用户以原生应用的类似方式消费它,可以被认为是web应用。如果它呈现为图标化应用,或者用于某特定任务,就不需要考虑是在浏览器里面,还是通过应用商店安装。Facebook的James Pearce对区分web网站和web应用概括几个可能方面并作为点评,我总结他的观点如下:

创造还是消费。Pearce认为只读的互动方式应归类为网站,但是这个标准在区分网站和web应用时并不足够。我们仍有一些例子,如Flipborad(明显面向消费),或者Twitter和Facebook(全都是用户产生的内容),无从适从分类。

可链接性。既然网站和web应用都可通过浏览器输入URL或者主屏图标中启动,Pearce指出这显然“不是一个有效的区分web应用和web网站方法。”

用户体验。视觉的修饰程度是重要的论证,这是用户可以使用的,但仍是模糊的边界。如果我的网站显示固定的工具栏但没有回退按键又如何?如果我们的表单以超链接方式而不是可触的item又如何,如果我使用平实滚动而不是光滑花俏工具条又如何?

架构。对于单网页web应用,如果想让浏览器更为自动和更能响应,又能获得诸如存储这类HTML5 API的好处,SEO(搜索引擎优化)是需要付出代价的。是否是web网站有SEO能力,而Web应用没有?我们又回到了使用技术术语解释两者差异。

你应该建立web应用还是web网站?

问题可以被看成是技术性的,撒上一些市场营销的香料。这让我想起了几个月前Sencha宣布主办的“HTML5已经准备好”大赛,鼓励开发者从原生应用中激发灵感,创建相似的web应用,并炫耀HTML5的能力。(注:Sencha是由ExtJS、jQTouch 以及 Raphael 三个项目合并而成的一个开源项目)

竞赛的创办者正确地指出:“移动web是引领web开发前沿的最肥沃土地,因为它没有桌面电脑的传统的旧版IE。你可以在应用和内容在相当新浏览器上使用这个假设前提下进行开发,因此你可以利用Canva、inline SVG、 HTML5视频、CSS3风格等等的全部功能,为用户带来生动的体验。”正如Sencha的Michael Mullany解释道。

那么是否可安全地认为在移动上建立web应用比web网站更好?移动用户在设备上执行特定任务,因此web应用提供与特定原生应用有相同的体验,比一般网站更为有趣。

长远上看并不重要,正如FT的Stephen Pinches指出,这没有任何意义。就长远而言,对于未来移动web:“不应有“移动”和“桌面”,而只是好的,以用户为中心设计,适配并响应所显示的屏幕尺寸和设备功能。然而,就短期和中期来看,需要进行区分,以确保用户体验可以在给定的设备上尽可能地好。”

Web的应用化

无论有何偏好,开发web应用的移动开发者人数在增长。根据VisionMobile最新的对6000+名开发者进行的开发者经济调查,已经有23%的HTML5移动开发者开发web应用,相比较有38%开发移动网站。

随着浏览器增加对设备API的支持,以及通过PhoneGap,Icenium或Appcelerator面向原生的开发者人数增加,甚至在最近推出的Firefox OS上开发,web世界明显地朝这应用方向前进。

正如Tim Berners-Lee爵士在2012年所说:“你手中的解决方案是:开发web应用!”