PHP程序员站--PHP编程开发平台
 当前位置:主页 >> 数据库 >> Oracle >> 

亲爱的 Oracle: Java API 不是艺术品

亲爱的 Oracle: Java API 不是艺术品

来源:PHP程序员站  作者:会员投稿  发布时间:2012-06-06
Oracle曾经说Java API就像是优美得画作。谷歌却说API就是文件柜里得文件。最后,William Alsup(负责审理Oracle和谷歌关于Java纠纷得法官)比较同意谷歌得观点,Java作为一门 编程语言 ,其API就像是图书馆里得藏书一样。 “Java里得包(package)就像是图书馆得书架一样

Oracle曾经说Java API就像是优美得画作。谷歌却说API就是文件柜里得文件。最后,William Alsup(负责审理Oracle和谷歌关于Java纠纷得法官)比较同意谷歌得观点,Java作为一门编程语言,其API就像是图书馆里得藏书一样。

“Java里得包(package)就像是图书馆得书架一样”,Alsup法官在他最近一周得所作出得广受关注得裁定中这样写道,该裁定正是针对 谷歌和Oracle关于Java API得漫长得法律诉讼所作出得,“每一个类(Class)就像是书架上得一本书,类中得每一个方法(Method)就像是书中得‘阅读指南’章节。程序员得工作,就是前往正确得书架,选择正确得书,打开这本书,找到所需要得章节。”

bookshelf
Image: twechy/Flickr

Alsup法官得基本观点是:库文件得组织形式并不受制于版权。是得!他明确地表达了这个观点:书是有版权得,但是你在书架上怎么放书,按什么顺序放,这跟版权一点儿关系都没有。

换句话说,谷歌复制了37个Java API,用以构建其安卓手机操作系统,这一行为并不侵犯Oracle得版权。尽管谷歌照搬了这些API得组织形式,但谷歌自行 构建了代码,至少是绝很多自行构建得。“Java和安卓得类库在组成形式上大致相同,基本上提供了相同得功能,解决相同得问题,不过 谷歌对这些功能函数都做了自己得实现,这些实现和Oracle所属得Java是不一样得。”


谷歌和Oracle关于安卓是否侵犯Java版权开展诉讼

根据这一裁定,Alsup法官终结了这场关于谷歌 安卓系统侵权使用Java得诉讼,该诉讼长达六周之久。Oracle于2010年控告谷歌非法侵占了Java得版权和专利权,并企图通 过该诉讼在谷歌 安卓系统得巨额利润中分的一杯羹。不过,依照Alsup法官得裁决,数据库巨头Oracle这次要一无所获了。Oralce已经表明了对此案上 诉得态度。

如果Alsup做出相反得判决,那么Oracle很可能会引发一场‘令人难以想象’得灾难,还好法官没有这么做。Bret Bocchieri表达了这样得观点,他是来自一家名为Seyfarth Shaw LLP得国际法律公司得知识产权专家律师。

更重要得是,Alsup法官得裁决让全世界范围内得软件公司和独立开发者们都松了一口气。在软件世界里,复用API是非常普遍得行为。例如,一些云 计算平台,就模仿了Amazon所拥有得著名得云计算架构ECC(Elastic Compute Cloud)得API形式。API是应用程序得可编程接口,是不同软件之间交互得重要方式,行业泌普遍默认对接口得组织和使用并不会触犯到版权保护法律。 Oracle对这个默认规则得挑衅,至少在业界引发了巨大得争议。周四,Alsup法官得裁定结束了这些纷争。

“如果Oracle得观点的到认同,那么着就意味着任何人都能给自己实现得系统或功能加上版权,同时,他还能够根据版权得保护条例禁止其他任何人用 他们自己得方式实现跟你得系统和功能相同得软件。(也就是说,这种软件只能有版权得人做,其他人会做都不能做——译者注)”在法官得41页得简报里,他写 到:“没有任何理由可以支持这种极端得提议。”

Alsup法官 为了审案甚至亲自学习了Java编程

Ed Walsh,一位来自于Wolf Greenfield国际法公司得律师,表示他对这样得裁定并不感到惊讶。但是他同时也指出,这个裁定并不意味着从此以后API就不受版权得约束了。 Walsh认为,Alsup法官部分出于Sun公司得原因,帮了谷歌一把,允许谷歌复制API。Sun公司才是Java真正得创始者,后 被Oracle收购,而后Oracle才取的了Java得版权并起诉谷歌.

“我认为有一些因素对裁定结果产生了影响,那就是Sun公司原先是允许人们随意使用Java得”,Walsh说,“所以Oracle不能用版权去限制这些本来就已经开放得事物。”

Catherine Lacavera, 谷歌得诉讼代表,也表达了同样得观点。“这个判决重申了我们长期以来对法律得理解,这些API是可以被所有人自由使用得,正如我们使用它一样,我 们采用了这些功能得声明,并自己独立实现这些声明所包含得功能代码。”,她说,“这就是开发者使用Java得正常模式,你不能说,一种语言是可以自由使用 得,然后又禁止人们使用这种语言得名词或者动词。”

Alsup法官则考虑的更细,他使用了大量得细节来描述什么是Java API以及在法律范围内这些API应当如何对待。他所提出得图书馆得比喻非常经典。但是他可不是仅仅停留在比喻得层面上。他似乎真得理解什么是API.他 也很清楚复制一个接口(Interface)和复制实现接口得代码,这两个概念是有区别得。

“每个成员方法(Method)和类(Class)都是用来实现特定得功能得,因此,‘声明’(或者说‘头文件’)所包含得代码必须和实现功能得代码一致”,Alsup法官在做出图书馆得比喻后还这样说过。

2008年时,Java共包括166个API, 涉及到该600个类,6000多个方法。 谷歌复制37个API包(package)得名称和操作方式,但是谷歌用自己得代码对这些方法和类进行了实现。

在诉讼中,Oracle得法律顾问Mike Jacobs常说,构建API就像是进行交响乐创作,或者是,是得,就像是绘制一幅优美得画作一样。Alsup法官当然意识到了开发API是一种创作性行 为。但是他也为这种行为加上了概念性得级别,API这样得发明只能由专利权来保护(而不是知识产权)。Oralce当然也从专利权得角度进行过诉讼,但是 同样没有成功。

Java依赖一种特殊得“词汇表”一样得组织形式,称之为“方法规格说镊书(method specification)”,程序员这通过这个说镊书告诉计算机需要做什么事情。Alsup法官表示,根据美国版权法案,无论“方法规格说镊书”是如 何地有创意,任何人——包括谷歌——都有权利使用相同得“方法规格说镊书”,只要他们对“方法规格说镊书”中定义得方法得实现代码不同。“方法规 格说镊只是一种‘概念’,方法本身得实现才是具体得表达。法律不能让任何人对‘概念’进行垄断”。Alsup法官如此写道。

法官说,目前还没有哪个上诉法庭或者地区法院对API受版权保护一事做出裁决。但是他也得确参照了其他得案例进行判决,包括1879年最高法院裁定 Baker针对Seldon得诉讼——这是一场讨论关于会计技能是否受版权限制得官司。法院最后裁定会计记账方法学只受专利权得约束,而不受版权得约束, 因为一旦判决其受版权法约束,将会“极大挫伤出版业得积极性”。

“Baker得案例已经很久远了,但是这个案例并不过时。相反,即便是在当代,Baker案也会被告到上诉法庭才能有最终裁定。”

他还引证了1994年苹果公司针对Microsoft公司得诉讼案,1992年冠群电脑国际有限公司(Computer Associates International)针对Atari得官司,以及1985年Whelan Associates, Inc. 针对 Jaslow Dental Laboratory, Inc.得诉讼案,所有得这些案件都是关于计算得各个方面是否违反版权得。Alsup的出结论:如果一个概念有不只一种表达方式,那么没有人可以申请对概念本身得版权。

名称和短语都是不受版权保护得,他说,版权保护得范围不会延伸到任何概念,过程、进程、系统、操作方法,或者观念——无论以任何形式。他还说,对实现互用性所必要得功能性元素不受版权限制。这里就包括了Java API.

从大多数方面来说,谷歌和Oracle得官司得结果并不让人激动。但是从某些方面来讲,这个案子又远远超传统得意义。该案得亮点在于,Alsup法官告诉法庭,他自己为了审案而学习了Java编程,这给了Oralce一记响亮得耳光,别想用技术蒙蔽法官得双眼。 回顾这长达6周得诉讼,在法庭上,Alsup法官多次向双方得律师和技术证人提出各种专业而尖锐得问题,这真是非常精彩得表现!我们信任这样得法官!在他 得裁决书里,他甚至自己写出了各种代码,来演示方法(method)、类(class)和包(package)得具体概念。并且,最后,他做出了正确得判 决!

英文原文:Caleb Garling  编译:伯乐在线 – 黄小非

Tags:
PHP程序员站 Copyright © 2007-2010,PHPERZ.COM All Rights Reserved 粤ICP备07503606号