中国雅虎首席架构师曾宏威谈互联网开放平台

阅读数:361 2008 年 5 月 20 日

话题:社区架构语言 & 开发文化 & 方法

借助平台,软件开发人员和用户都能从中受益。Google 围绕iGoogle 的个性化主页服务推出了自己的平台,并鼓励开发者为 iGoogle 开发各类的自制软件。而Facebook在开发其 API 后,其平台的应用程序数量迅速增长。Apple 的 iPhone 可能还算不上真正意义上的平台,但是现在它也在计划或者说正在向第三方软件开发者开放应用接口,以方便他们开发出相应的网络应用软件。中国雅虎显然也意识到平台的重要性,并已经有所行动。日前,InfoQ 中文站的编辑霍泰稳采访了中国雅虎的首席架构师曾宏威,就开放平台方面的各种问题和他进行了交流。

InfoQ 中文站:开放平台的好处在哪里?中国雅虎提供了哪些开放的接口,主要用来做哪些应用?

曾宏威:对开发者而言,(互联网)开放平台为开发者提供了一个应用运行的环境,就如同今天 PC 的操作系统为桌面应用程序提供的运行环境那样。中国雅虎的 NCP就是这样一个 Web 应用的开放平台。NCP 为应用提供了基础的运行环境,如用户管理、权限管理、会话管理、容器页面(也有人称之为画布,Canvas),很快也将提供应用前端代码的宿主服务器。

在 NCP 上开发 Web 应用,开发者不必像从前那样需要建立独立的网站和完整的网页,他们只需要开发一些窗件(Widget),就可以跑起来。这些窗件甚至可以仅仅由 HTML/CSS/Javascript 这些“前端”代码组成,也就是说,开发者自己连服务器都不再需要了。这样,开发者不仅节省了成本,还可以将主要精力放在应用关键功能的开发上。NCP 建立在中国雅虎的资源及技术优势之上,中国雅虎庞大的用户群、可观的流量、强大的计算资源都会以 API 的形式开放给应用。

NCP 是一个通用的 Web 应用平台,我们不会规定应用的类型,我们的任务只是尽量把平台做好,为开发者提供一个展现智慧和创造力的空间。不管是娱乐、工具还是商务,只要是合法的、满足互联网用户需求的应用,就是有价值的,就会有她的市场;而用户会来决定应用的好坏。

InfoQ 中文站:相对于其他的开发平台如 Google 的 OpenSocial,中国雅虎有什么技术优势,会和他们有合作吗?

曾宏威:OpenSocial是一个面向社交网络 (Social Network) 的 API 规范,其整个概念的核心是“人”和“关系”。NCP 是一个通用的平台,我们正在整合中国雅虎的资源,使 NCP 的应用可以运行在越来越多的产品中,而不仅仅是社区(社交)产品中。

社交网站的特点决定了其应用大都是给单个用户自己使用的,再通过关系网络(Social Graph)和事件(Activities)传播给自己的朋友。而 NCP 应用可以是大家“一起用”,例如在站长天下中,站长添加了某个应用之后,访问本站的所有用户都可以使用该应用。

阿里巴巴现在在努力建设电子商务生态圈,而 NCP 将来会支持越来越多的商务和服务特性。当然,中国雅虎也有自己的社交网络产品,我们将来也可能在 NCP 中加入对 OpenSocial 的支持。

InfoQ 中文站:中国雅虎提供的开放平台 API 如何与其他网站的 API 互操作?每个平台都有自己的标准,会不会有壁垒?

曾宏威:开放的精神从互联网诞生以来就一直伴随着她的每一步发展;今天互联网的蓬勃发展也正是得益于此。今天互联网开放平台仍然处于起步阶段,出现不同的标准也是正常的和有益的。我相信通过互联网社区的努力和市场的选择,开放平台必然逐渐走向互操作和统一标准。

我也非常高兴地看到 OpenID、oAuth 等这样开放标准的出现,并且在被越来越多的网站所支持。中国雅虎正在计划对这些开放标准进行支持,并且愿意通过与其他开放平台的合作,为互联网提供一个更加开放的生态圈。

做为一个例子,大家不久将会看到,NCP 将会支持UWA 窗件

InfoQ 中文站:对于客户而言,如果要基于中国雅虎的开发平台做应用,需要做哪些准备?有什么难点?中国雅虎会提供什么帮助?

曾宏威:开发基于 NCP 的应用非常简单,只要了解简单的 HTML 几分钟就可以完成一个“Hello World”的开发。当然,要开发复杂些的应用,还要具备 HTTP 协议的一些知识。

目前 NCP 应用的代码,需要运行在开发者自己的 Web 服务器上,而不久的将来我们会为开发者提供前端代码的宿主服务器。

中国雅虎提供了开发者网络,对 NCP 开发者提供支持。开发者可以随时到中国雅虎开发者网络http://dev.cn.yahoo.com 网站查阅相关的文档。同时,在群组中会有我们的工程师为开发者解答开发中遇到的问题。另外,开发者也可以通过邮件联系我们:ncp-dev-support@ilist.cn.yahoo.com

InfoQ 中文站:我们知道淘宝网也在做自己的开放平台,这个和中国雅虎的开放平台有什么交集?

曾宏威:淘宝即将推出 Open API,广大开发者届时将有机会为淘宝用户提很多供增值应用。而 NCP 可以为这些应用提供一个很好的运行环境和平台。从另外一个角度说,NCP 开发者在自己的应用里面,可以自由地调用任何第三方的 API,当然也包括淘宝的 Open API,为应用增加电子商务功能。

InfoQ 中文站:中国雅虎开放平台的短期、长期目标是什么?

曾宏威:这段时间我们的重点是让 NCP 更加方便、易用。我们的长期目标是整合阿里巴巴集团的优势,和兄弟公司以及开发者一起打造一个中国电子商务的应用平台,和开发者共赢。