Java编程详解(微课版)
上QQ阅读APP看书,第一时间看更新

1.2 Java语言的诞生

Java平台和语言最开始只是Sun公司在1990年12月开始开发的一个内部项目。Sun公司的一个名为帕特里克·诺顿的工程师被自己开发的C语言和C语言编译器搞得焦头烂额,因为其中的API极其难用。帕特里克·诺顿决定改用Ne XT,同时他也获得了研究公司的“Stealth 计划”项目的机会。

Sun公司预料未来科技将在家用电器领域大显身手,并将“Stealth 计划”改名为“Green计划”,瞄准下一代智能家电(如微波炉)。詹姆斯·高斯林和麦克·舍林丹也加入了帕特里克·诺顿的工作小组,他们和其他几个工程师一起在加利福尼亚州门罗帕克市沙丘路的一个小工作室里面研究开发新技术。

工作小组使用的是内嵌类型平台,可以用的资源极其有限。团队最初考虑使用C语言,但是很多成员,包括Sun公司的首席科学家比尔·乔伊,都发现C语言和可用的API在某些方面存在很大问题。而且C语言太复杂,导致很多开发者经常错误使用。他们还发现C语言缺少垃圾回收系统,缺乏可移植的安全性、分布程序设计和多线程功能,而他们想要的是一种易于移植到各种设备上的平台。

根据可用的资金,比尔·乔伊决定开发一种集C语言和Mesa语言于一体的新语言,在一份报告上,比尔·乔伊把它称为“未来”,他提议Sun公司的工程师应该在C语言的基础上开发一种面向对象的环境。最初,詹姆斯·高斯林试图修改和扩展C语言的功能,他自己称这种新语言为C --,但是后来他放弃了,最后他将创造出的全新的语言命名为“Oak”(橡树),以他的办公室外的树而命名。

就像很多开发新技术的秘密工程一样,工作小组没日没夜地工作到了1992年的夏天,他们能够演示新平台的一部分内容了,包括Green操作系统、Oak的程序设计语言、类库及其硬件。最初的尝试是面向一种类PDA设备,被命名为Star7,这种设备有鲜艳的图形界面和被称为“Duke”的智能代理来帮助用户。1992年12月3日,这台设备得以展示。

同年11月,Green计划转化成了“First Person有限公司”,一个Sun公司的全资子公司,团队也被重新安排到了帕洛阿尔托。First Person团队对构造一种高度互动的设备很感兴趣,当时代华纳公司发布了一个关于电视机顶盒的征求提议书(Request for proposal)时,First Person改变了他们的目标,作为对征求意见书的响应,提出了一个机顶盒平台的提议。但是有线电视业界觉得First Person的平台给予了用户过多的控制权,因此First Person的投标败给了SGI。另外,First Person与3DO公司的另外一笔关于机顶盒的交易也没有成功。由于他们的平台不能在电视工业中产生任何效益,所以公司再次并回Sun公司。

1994年六七月间,在经历了一场历时三天的头脑风暴式的讨论之后,约翰·盖吉、詹姆斯·高斯林、比尔·乔伊、帕特里克·诺顿、韦恩·罗斯因和埃里克·斯库米团队决定再一次改变努力的目标,这次他们决定将该技术应用于万维网。他们认为随着Mosaic浏览器的到来,Internet正在向同样高度互动的远景演变,而这一远景正是他们在有线电视网中看到的。作为原型,帕特里克·诺顿开发了一个小型万维网浏览器Web Runner,后来改名为Hot Java。同年,商标搜索显示,Oak已被一家显卡制造商注册,因此团队找了一个新名字,将Oak改名为Java。这个名字是在很多成员常去的本地咖啡馆中杜撰出来的。虽然有人声称Java这个名称是开发人员名字的组合,但另一种比较可信的说法是这个名字是出于组员对咖啡的喜爱,所以以Java咖啡来命名。类文件的前4个字节如果用十六进制阅读,分别为CA、FE、BA、BE,就可以拼出两个单词“CAFE BABE”(咖啡宝贝)。

1994年10月,Hot Java和Java平台向公司高层进行了演示。1994年,Java 1.0a版本已经可以下载,但是Java和Hot Java浏览器的第一次公开发布却是在1995年5月23日的Sun World大会上进行的,由Sun公司的科学指导约翰·盖吉宣告Java技术的诞生。这个发布是与网景公司的执行副总裁马克·安德森的惊人发布一起进行的,马克·安德森宣布网景将在其浏览器中包含对Java的支持。1996年1月,Sun公司成立了Java业务集团,专门开发Java技术。