Oracle律师将Android中Java API的重新实现与复制《哈利·波特》的内容进行了比较,
美国最高法院将于今年年初审理一个重要案件。
与此同时,Oracle的业务最初是建立在IBM开发的SQL编程语言的实现之上的,即使现在该公司也通过Amazon S3的API提供云服务,这也是完全正常的。 自行业诞生以来,API 重新实现一直是计算机科学发展的自然组成部分。
甲骨文指责谷歌非法复制 Java API,包括与语法结构相关的命名命令列表。 Android操作系统专门兼容Java API,使Java程序员可以更轻松地将软件和知识转移到新平台。 为此,Android 准确复制了相应的 Java API 命令和语法结构。
但 Java API 并不是唯一的 API,Android 也不是唯一的重新实现。 在当今的IT行业,API无处不在,重新引入API对于维持竞争、防止大公司垄断至关重要
Duane 给出了流行的 Amazon S3 存储平台的示例。 为了能够从 S3 写入和检索文件,Amazon 开发了全面的、
GET /?Delimiter=Delimiter&EncodingType=EncodingType&Marker=Marker&MaxKeys=MaxKeys&Prefix=Prefix HTTP/1.1
Host: Bucket.s3.amazonaws.com
x-amz-request-payer: RequestPayer
亚马逊是云服务市场中明显的领导者,其竞争对手提供了 S3 API 的重新实现,同时他们必须模仿命令名称、参数标签、类型前缀 x-amzS3 API 的语法结构和一般组织。 换句话说,Oracle 声称的所有内容均受版权保护。
提供 Amazon S3 API 副本的公司包括
甲骨文声称其行为的合法性基于开源Apache 2.0许可证,该许可证允许免费复制和修改代码。 例如,
但问题是知识产权法是否适用于 API 之类的东西。 这是最高法院必须做出的决定。
API是谁发明的?
“子程序库”的术语和概念首次出现在 Herman Goldstein 和 John von Neumann 所著的《电子计算仪器的规划和编码问题 - 第二部分,第三卷(普林斯顿大学高级研究所,1948 年)》一书中。
这是对在内存中存储程序的计算机编程方法的首次描述(以前不存在)。 它被广泛分发给当时正在尝试创建自己的计算机的大学。 最重要的是,这本书包含一个关键思想: 大多数程序将使用通用操作,带有例程的库将减少新代码和错误的数量。 这个想法被 Maurice Wilkes 进一步完善,并在 EDSAC 机器中付诸实践,他因此获得了 1967 年图灵奖。
左边是EDSAC子程序库
下一步是创建高阶函数和成熟的软件接口,正如 Maurice Wilkes 和 David Wheeler 在《为电子数字计算机准备程序》(1951 年)中所做的那样。
术语本身 应用程序界面 (API) 出现于 60 世纪 XNUMX 年代末。
演示文稿的作者
API
创造者
年
重新实施
年
FORTRAN 库
IBM
1958
UNIVAC
1961
IBM S/360 ISA
IBM
1964
阿姆达尔公司
1970
标准C库
AT&T/贝尔实验室
1976
马克·威廉姆斯公司
1980
Unix系统调用
AT&T/贝尔实验室
1976
马克·威廉姆斯公司
1980
VT100 Esc 序列
DEC
1978
希思杰
1980
IBM PC BIOS
IBM
1981
凤凰科技
1984
MS-DOS命令行界面
微软
1981
FreeDOS项目
1998
海斯 AT 命令集
海斯微
1982
锚点自动化
1985
的PostScript
土砖
1985
GNU/GhostScript
1988
SMB
微软
1992
桑巴项目
1993
Win32
微软
1993
葡萄酒项目
1996
Java 2 类库
周日
1998
谷歌/安卓
2008
Web API 美味
美味的
2003
通知板
2009
来源:
复制和重用 API(库、指令集)不仅是正确的,而且这种编程方法是计算机科学规范中直接推荐的。 甚至在复制 S3 编程接口之前,Oracle 本身就多次这样做过。 而且,Oracle的业务最初是建立在IBM开发的SQL编程语言的实现之上的。 Oracle 的第一个旗舰产品是 DBMS,主要是从 IBM System R 复制而来。在本例中,我们讨论的是 SQL 的重新实现,作为 DBMS 的“标准 API”。
对 API 施加知识产权可能会造成影响每个人的法律雷区。 API 实现和
为了避免这些深远的后果,Oracle 和维持其论点的上诉法院试图将版权侵权限制在某些与原始版本“不兼容”的 API 重新实现上。 但也部分重新实现
Oracle 诉讼的主要危险在于,它可能会阻止小型科技公司创建与 S3 等主流平台兼容的系统版本。 如果没有这种兼容性,程序员将被有效地排除在该公司的产品之外。
行业代表和开发商只能希望理性占上风,
来源: habr.com