JAVA发展简史
在1991年时候,James Gosling在sun公司的工程师小组想要设计这样一种小型计算机语言。该语言主要用于像电视盒这样的消费类电子产品,这些电子产品有一个共同的特点:计算处理能力和内存都非常有限。
所以要求:
语言必须非常小且能够生成非常紧凑的代码,这样才能在这样的环境中执行。
另外,由于不同的厂商选择不同的CPU,因此,要求该语言不能和特定的体系结构绑在一起,要求语言本身是中立的,也就是跨平台的。
所以,将这个语言命名为“Green”,类似于绿色软件的意思。
后来,改名将OAK。橡树的意思。
改名后发现已经有一种语言叫这个名字了,再改名叫JAVA。
•1991年,Sun公司的Green项目,Oak
•1995年,推出Java测试版
•1996年,JDK1.0
•1997年,JDK1.1
•1998年,JDK1.2,大大改进了早期版本的缺陷,是一个革命性的版本,更名为Java2。
•2004年,J2SE 5.0 (1.5.0) Tiger老虎
•2006年,J2SE 6.0 (1.6.0) Mustang野马
JAVA为什么流行
C++已经是非常完美的面向对象的编程语言,有所有面向对象的特性,而且有c的高效率、简洁,因此非常受欢迎。直到现在仍然被广泛使用。
但是,随着Internet的爆发式的发展,促成了java的大发展。
虽然internet的发展是java大发展的主要因素。
但是,发明java的初衷却是用于消费类电子产品,
比如:微波炉、遥控器等,用于这些产品的编程。
因为这些产品CPU都是完全不同的,并且计算能力都非常有限以及内存非常有限。
因此,我们需要JAVA语言需要符合两个特点:
•体系中立:JAVA需要能够生成运行于不同环境、不同CPU的代码。也就是代码的可移植性。
•代码紧凑:因为他的运行环境资源非常有限。
但是,只能家电产品并没有像最初想象的那样大发展。
JAVA最初只能是有用但是默默无闻。
同时,internet却进入了他的爆发式发展阶段,
一夜之间,大家都在谈论Inertnet,
都在忙着将自己的计算机连接到网络上。
这个时侯,遇到了一个大的问题。
人们发现连接到internet的计算机各式各样,有IBM PC、苹果机、各种服务器等等,
不仅硬件CPU不同,操作系统也不同,整个的网络环境是复杂的。
这个时候,程序员们希望他们编写的程序能够运行在不同的机器,不同的环境中,这需要一种体系中立的语言,代码可移植。
网络之间传送信息的效率较低,因此,也需要代码紧凑提高效率。
JAVA的研发小组忽然发现他们用于小范围的语言也可以适应Internet这个大环境。
因此,他们将自己的研发重点从消费类电子产品转向了internet编程。
受JAVA影响最大的是c#, 他是微软推出的和java抗衡的语言,用于支持.net框架。C#总体上和java非常相似。
JAVA各版本含义
•J2EE(Java 2 Enterprise Edition):定位在服务器端的应用
J2EE是J2SE的扩展,增加了用于服务器开发的类库。
如:javax.servletEnterprise JavaBeans 是一种用来代表企业逻辑的软件组件;
JDBC则是让程序人员能直接在Java内使用的SQL的语法来访问数据库内的数据;
Servlet能够延伸服务器的功能,通过请求-响应的模式来处理客户端的请求;
JSP是一种可以将Java程序代码内嵌在网页内的技术;
另外还有包括XML、email及transaction等各种应用于服务器端的API。
•J2SE(Java 2 Standard Edition):定位在个人计算机上的应用
这个版本是Java平台的核心,它提供了非常丰富的API来开发一般个人计算机上的应用程序,包括用户接口AWT及Swing,网络功能与国际化、图像处理能力以及输入输出支持等。
在互联网上大放异彩的Applet也属于这个版本。
•J2ME(Java Micro Edition):定位在消费性电子产品的应用上
J2ME是J2SE的内伸,包含J2SE的一部分核心类,
也有自己的扩展类,增加了适合微小装置的类库:javax.microedition.io.*等。
这个版本针对资源有限的电子消费产品的需求精简核心类库,
并提供了模块化的架构让不同类型产品能够随时增加支持的能力。
这个版本的应用层面相当广泛,会是未来Java平台发展的重点项目。