Sun的Java语言开发小组成立于1991年,其目的是开拓消费类电子产品市场,例如:交互式电视,烤面包箱等。Sun内部人员把这个项目称为
Green,那时World Wide Web还在图纸上呢。该小组的领导人是James Gosling,41岁。于1984年加盟Sun Microsystem公司,以前在一家IBM研究机构工作。他是Sun NeWs窗口系统的总设计师,虽然当时NeWs在技术上非常成功,但在商业上却完全失败,没有了Java那么好的运气。
Gosling是一位非常杰出的程序员,GOSMACS也是Gosling写的,它是第一个用C实现的EMACS的文本编辑器。
在研究开发过程中,Gosling 深刻体会到消费类电子产品和工作站产品的开发哲学之间差异:消费类电子产品要求高可靠、费用低、标准化、
使用简单,而工作站用户要求强大的计算能力,而不在此乎价格以及操作的复杂性。消费类电子产品用户并不关心CPU的型号,也不欣赏专用昂
贵的RISC处理器,他们需要建立在一个标准基础之上,一系列可选的方案,从8086-80586都可以上。
从C 开始 为了使整个系统与平台无关,Gosling首先从改写C 编译器着手。但是Gosling在改写过程中感到仅C 是无法满足需要的,于是在
1991年6月份开始准备开发一个新的语言,那么给它起一个什么名字呢? Gosling回首向窗外望去,看见一棵老橡树,于是建一个目录叫Oak,这 就是Java语言的前身。(后来发现Oak已是Sun公司的另一个语言的注册商标,才改名为Java,即爪哇,太平洋上一个盛产咖啡的岛屿的名字)。
Gosling在开始写Java时,并不局限于扩充语言机制本身,更注重于语言所运行软硬件环境,他要建立一个系统,这个系统运行于一个巨大的、
分布的、异质的网络环境中,完成各电子设备之间的通讯与协同工作。Gosling在设计中采用了虚机器码(Virtual Machine Code)方式。即Java
语言编译后产生的是虚机器码,虚机器码运行在一个解释器上,每一个操作系统均有一个解释器,这样一来,Java就成了平台无关语言。这和
Gosling设计的Sun NeWs窗口系统有着相同的技术味道,在NeWs中用户界面统一用Postscript描述,不同的显示器有不同的Postscript解释器,
这样便保证了用户界面的良好的可移植性。当Patrick Naughton加入该小组后,整个工作进展神速。Naughton也是Sun公司的技术骨干,曾经是Open Windows的项目的负责人。经过17个月
的奋战,整个系统胜利完成。它是由一个操作系统,一种语言(Java),一个用户界面,一个新的硬件平台,三块专用芯片的构成。而通常情况
下,这样的项目在Sun公司要75个人干三年。项目完成后,在Sun公司内部做一次展示和鉴定,观众的反应是: 在各方面都采用了崭新的、非常
大胆的技术。许多参观者对Java留下了非常深刻的印象,特别得到Sun的二位领导人Scott McNealy和Bill Joy的关注,但Java的前途未卜。初战告败
接着,Java项目的工作人员开始做应用规划,着手成立一家公司,从事消费类电子产品的开发,这家公司就是FirstPerson Inc.。公司的第一
个项目就是Time-Warner的投标项目,顶置盒式操作系统和请求式电视技术。虽然FirstPerson Inc.在技术毫不逊色于任何公司,但是由于经营
策略上的失误,败给了SGI。FirstPerson一直到1994年初仍在坚持开发专用的顶置盒式操作系统,但实践证明,这个市场尚未成熟。例如:好
几家交互式有线电视网的实验都以失败告终。 Naughton立即认识到研究方向应该转移。在Naughton的努力下,研究开始向在线服务,CD-ROM和基于网络的台式机方向转移。最后FirstPerson
解散,一部分人去了Sun Interactive开发数字视频数据服务器,而另一部分开始把Java用于基于网络的台式机系统。
Java语言的转折点
到了1994年,WWW已如火如荼的发展起来。Gosling意识到WWW需要一个中性的浏览器,它不依赖于任何硬件平台和软件平台。它应是一种实时性
较高,可靠安全,有交互功能的浏览器。于是Gosling决定用Java开发一个新的Web浏览器。2 Java语言的历史
这项工作由Naughton和Jonathan Payne负责,到1994年秋天,完成了WebRunner的开发工作。WebRunner是HotJava的前身,这个原型系统展示
了Java 可能带来的广阔市场前景,给SunLab两位领导: Bert SutherLand和Eric Schmidt留下深刻印象,这一点非常重要,因为这两个人是Sun
的首席技术官员。特别是Sun的总裁McNealy对Java抱有坚定的信念,为Java进入WWW立下了汗马功劳。正如McNealy所料,WebRunner改名为
HotJava,并于1995年5月23日发表后,引起了产业界巨大的轰动,Java的地位也随之而得到肯定。McNealy卓越的洞察力和果断的决策,挽救了
这项差点锁进文件柜的技术。 又经过一年的试用和改进,Java 1.0版终于在1996年年初正式发表。
Java已进入了主流计算模式:
目前全球有67%的大型企业在采用Java开发自己的信息系统;200多家公司从Sun公司获得了Java技术许可证;400余个应用取得100%纯Java证书
;Java开发者阵营拥有250万多位会员.... Java从1995年的一个小小的编程开发工具,发展到了今天可驾御从智能卡,小型消费类器件到大型
数据中心的Java平台,其发展速度是惊人的,让我们回顾一下它的发展历程:
1995年3月,Sun公司公布了Java的Alpha1.0a2版本
1995年5月,Java的第一个办公版本发布
1996年1月,Java的第一个开发包JDK v1.0发布1997年2月,Java的开发包Java v1.1发布
1998年12月,Sun公司发布了Java2平台,JDK v1.2发布,Java2平台的发布是Java发展史的新里程碑。
1999年6月,Sun公司重新组织Java平台的继承方法,并将Java企业级应用平台作为发展方向,因此,到今天Java的大家族中已有了下面三个主
要成员:
1. J2ME——Java 2 Micro Edition用于嵌入式Java消费平台;
2000年12月,Sun公司宣布,它将推出Java2平台Micro(J2ME)开发版和适用于Palm OS平台的MID(Mobile Information Device)规范概要。这些
新品的推出将使250多万Java技术开发商更容易为通用的Palm OS平台创建应用程序。此外,Sun和Palm公司还将通过JCP(Java Community Process)项目与业界的其它专家一起为个人数字助理(PDA)确定编程接口的技术规范。开发者因为能把他们的Java技术经验用在Palm OS平台
上配置解决方案而受益;终端用户因为能将采用J2ME编写的应用程序用于新的企业,商务,娱乐和通信等解决方案而受益。有了相对于Palm OS
平台的Java技术发展规划,开发商们将会拥有标准化的适用于业界应用的解决方案。
2. J2SE——Java 2 Standard Edition 用于工作站,PC机的Java标准平台。在Java2平台JDK1.2发布之后,Sun公司又相继发布了j2sdk1.3,j2sdk1.3.1,2001年9月发布了j2sdk1.4Beta2版。他们都是支持分布式计算的免
费的Java2标准平台。Java2标准平台体现了Sun公司的开放精神,被称为“互联网上的世界语”,公布于互联网上供大家免费享用,甚至连源代
码也不保密,可以在网上免费下载。
3. J2EE——Java2 Enterprise Edition可扩展的企业级应用Java2平台。
2001年1月,Sun公司在旧金山召开了关于Java2平台企业版(J2EE)的新闻发布会。J2EE是分布式企业软件组件架构的规范,具有Web性能,具有
更高的特性,灵活性,简化的集成性,便捷性,以及J2EE服务器之间的互操作性。目前已有9个取得J2EE技术许可的公司推出了基于J2EE技术的
兼容性产品。这些公司都通过了J2EE兼容性测试(CTS)中的各项测试,满足了J2EE技术品牌中的所有要求。当前,有25个公司持有J2EE平台的
许可证,他们代表了应用服务器市场的76%~90%的厂商。
SUN MicroSystem 公司总裁 Scott McNealy 认为 Java 为 Internet 和 WWW 开辟了一个崭新的时代。 Java 的诞生必将对整个计算机产业产
生深远的影响!