Google 凭借 Chrome 2.0 和 Wave 推动 Web 平台

  • Dio Synodinos
  • 崔康

2009 年 5 月 31 日

话题:开源JavaScriptGoogle架构HTML5DevOps语言 & 开发文化 & 方法

Google 最近发布了两款工具以推进它的使命——“组织全球信息,使其易于访问和有用”。其中一个工具就是浏览器 Chrome 2.0,用于减轻客户端应用的痛苦。另一个工具则是 Wave,它是一个交流和协作的新 Web 环境。 

2008 年 9 月 1 日,Google发布了一款崭新的开源浏览器——Google Chrome。作为举世公认的 Web 领域的主角,Google 的这一动作引起了大量的关注、分析和预言

从那时起,Google 就开始收集反馈和功能需求,其中一些已经被采纳进三月份的 beta 版

在前几天发布的2.0 版中,Google 宣布修补了超过300 个 Bug,同时增加了若干功能:

改进的新 Tab 页:这是用户最积极要求的功能,从新 Tab 页中删除缩略图。现在你终于可以在最近访问的区域中删除令人难堪的博客访问记录了。

全屏幕模式:如果你曾经使用 Google Chrome 观看表演或者大尺寸视频,当时你可能希望利用上屏幕上的每一个像素。现在你可以通过按键 F11 或者菜单选项来隐藏标题栏和浏览器窗口的其余部分。

表单自动填充:一遍又一遍的在表单中重复填写你的信息是非常乏味的。表单自动填充功能可以自动显示你之前在同一个表单中填写的信息。当你想清除这些信息时,可以通过 Tools 菜单很方便的实现。

除了这些改进,Chrome 关注于为用户提供一个执行高度扩展和复杂 JavaScript 应用的平台。其中 V8 JavaScript 引擎起到了主要作用:

V8 JavaScript 引擎基于扩展性而设计。扩展性在 JavaScript 环境中意味着什么?为什么它对现在 Web 应用非常重要?

Web 应用变得越来越复杂。这种日益增加的复杂性带来了更多的 JavaScript 代码和对象。对象数量的增加对 JavaScript 引擎的内存管理系统产生了 额外的压力,不得不灵活处理对象的分配和回收。如果引擎没有足够的扩展性以处理大对象堆,在运行大型 Web 应用时性能就会下降。

对于 Google 来说,另外一个 JavaScript 扩展性非常重要的原因是,Google 前几天发布了新交流和协作平台 Google Wave

“Wave”相当于一种谈话和文档的集合,人们可以在这里通过富格式文本、照片、视频、地图等等交流和协同工作。

其工作原理如下:在 Google Wave 上你可以创建一个 Wave,然后添加人员。每一个在你 Wave 上的人都可以使用富格式文本、照片、小工具甚至是来自 Web 的 Feed。他们可以直接回复或者修改 Wave。这是一种并发富文本编辑模式,你的伙伴在 Wave 中填写什么,你都可以即时看到。这意味着 Google Wave 也非常适合私人快速信息传递——有助于协作和交流。你也可以“重播”Wave 以查看其如何变化的。

从架构师的角度,Google Wave 包含三层:产品、平台和协议

  • Google Wave 产品(以开发者预览的形式提供)是一个 Web 应用,用户可以访问和修改。它基于 HTML5 和 Google Web Toolkit。它包括一个富文本编辑器和其他功能,如桌面拖拽(允许你把一套照片拖进 Wave 中)。
  • Google Wave 也可以被看做是一个包含丰富开放 API 的平台,开发人员可以借此在其他 web 服务中嵌入 Wave,或者构建 Wave 里的新扩展。
  • Google Wave 协议是一个存储、分享和同步并发控制(确保任何变化可以即时更新给用户和服务)Wave 的基本格式。该协议基于开放联盟,因此任何人的 Wave 服务都可以与其他人或者 Google Wave 服务交互。为了促进该协议的使用,我们打算开放 Google Wave 背后的源代码。

开发人员可以从Google Wave 开发人员博客上找到更多有关Google Wave API的信息,或者从Google Code 博客了解Google Wave 联盟协议

目前,只有Java 客户端库,不过Python 版的已经列入日程。 

Wave 的关键因素之一是符合谷歌的原则——开放和“不作恶”,因此它被设计成任何人都可以成为 wave 提供者,创建 wave 服务和互操作,就像任何人都可以运行自己的 SMTP 服务器

我们希望壮大这个平台,因此我们 Google Wave 联盟协议的初稿和底层网络协议放在一起以在 wave 供应商之间共享 wave。

是的,任何人都可以创建 wave 服务器和互操作,就像任何人都可以运行他们自己的 SMTP 服务器。Wave 协议欢迎社区的参与,目的是继续改善我们共享信息的方式。

这仅仅是个开始。为了帮助潜在的 wave 提供者起步,我们计划发布一个开源的、高质量的 Google Wave 客户端和服务器的参考实现,同时提供一个用户开始访问的开放联盟端点。

你可以在 InfoQ 中找到更多有关JavaScriptOpen WebWeb BrowsersGoogle的信息。

查看英文原文:

Google Pushes the Web Platform with Chrome 2.0 and Wave

开源JavaScriptGoogle架构HTML5DevOps语言 & 开发文化 & 方法