java语言的发展史

SUN公司介绍

       SUN公司全称是:Stanford University Network.  SUN公司是从斯坦福大学孵化器出的高科技公司。创立后,曾经市值名列IT公司第一位。在2001年时,市值2100亿美元,远超过google公司、IBM公司。SUN公司不仅打败了包括 IBM 在内的全部工作站(Work Station)和小型机(Mini Computer)公司,而且依靠它的 Solaris(一种Unix)和风靡世界的 Java 程序语言,成为在操作系统上最有可能挑战微软的公司。太阳公司不乏能人,它不仅为 Google 培养了 CEO埃里克.施密特和首任工程部副总裁韦恩.罗森(Wayne Rosen),并且在一定程度上奠定了今天 Google 工程部门的基础。

 

当然,今天的SUN公司已经一落千丈,并且被oracle公司收购。sun公司从成立到市值2000亿美元经过了20年,但是走下坡路只用了1年时间!这就是IT行业的残酷性!

JAVA的诞生和核心特点

       上世纪90年代初,SUN公司的James Gosling(高司令,^_^)领导的Green项目,着力打造一个分布式的、可以在消费类电子产品(如电视机顶盒)使用的系统架构。

这种架构中,要求写的代码可以运行在各种消费类电子产品中,即要求代码的中立性、跨平台性。

最初,Green项目使用的C++,但是在研发过程中发现C++并不能很好的适应新的需求。于是,这些高人对C++编译器做了改写,仍然不太理想,不太符合跨平台的特性。 牛人有牛人特有的牛脾气,于是,大家决定重起炉灶,开始研发一种新的语言,即JAVA. 

 

经过一年半的研发,整个产品研发完成。但是,很遗憾,消费类电子产品并没有高速的发展起来,JAVA进入蛰伏期。

【注】跨平台特性,始终是JAVA的核心优势!

JAVA的飞速发展

      无心插柳柳成荫!90年代中末期,有一个改变世界的大事出现了:互联网的爆发式增长。在传统产业,例如钢铁产业要想取得产量翻番,那需要很多年的时间。但是,在互联网行业都是呈指数级增长,爆炸式的增长。google可以在短短几年就增长到上千亿美元市值。

     互联网将各种各样的电脑连到了一起,这时,我们发现电 脑的操作系统各种不同。因此,急需一种跨平台的语言,通过它编写的程序可以在各种平台上运行。JAVA正好符合这种需求。使用JAVA编写的applet程序给了90年代的人们极大的震撼,于是JAVA迎来了他的黄金时代!

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野马

•    2011年,JAVASE7.0 

JAVA的特性和优势

简单性

        就是c++语法的纯净版。没有头文件,指针运算,结构,联合,操作符重载,虚基类等等。由于语法基于c,因此学习起来完全不费力。

面向对象

        面向对象是一种程序设计技术,他将重点放在数据(即对象)和对象之间的接口上。

 

可移植性(跨平台性)

       这是JAVA的一个重要的优势。JAVA代码或者说字节码、二进制码可以跨平台的移植,而不用管具体的操作系统和硬件环境。JAVA本身就是面向网络的,只有在网络环境中才能显示出他的优势,比如:现在我有一个网络环境,要让我的笔记本和手机交互,笔记本环境是windows发出一个让手机定时录音的JAVA代码,手机只有简单Linux内核操作系统,照样可以完美的执行这个代码。

“一次编写,随处运行”:“write once, run anywhere”

       JAVA在设计时就很注重移植和跨平台性。比如:JAVA的Int永远都是32位。不像c++可能是16,32,可能是根据编译器厂商规定的变化。这样的话程序的移植就会非常麻烦。

高性能

       JIT(JUST IN TIME)即时编译。将一些“热点”字节码编译成本地机器码,并将结果缓存起来,在需要的时候重新调用。这样的话,使JAVA程序的执行效率大大提高,某些代码甚至接待c++的效率。随着这种技术的一天天完善,也许有一天会超越编译代码的效率。 

分布式

       JAVA是为internet的分布式环境设计的,因为他能够处理tcp/ip协议。事实上,通过url访问一个网络资源和访问本地文件是一样简单的。Java还支持远程方法调用(RMI,remote method Invocation),使程序能够通过网络调用方法。

动态性

       就是在需要时将某些代码添加到正在运行的程序中。反射机制。当需要把某些代码添加到正在运行的程序中时,动态性是一个非常重要的特性。Java的动态特性是其面向对象设计方法的扩展。它允许程序动态地装入运行过程中所需要的类,这是C++语言进行面向对象程序设计所无法实现的

多线程

       多线程的使用可以带来更好的交互响应和实时行为。多线程的简单性是Java成为主流服务器端开发语言的主要原因之一。

安全性

       Java适合于网络/分布式环境,为了达到这个目标,在安全性方面投入了很大的精力,使Java可以构建防病毒,防篡改的系统。

健壮性

       Java是一种健壮的语言,吸收了C/C++ 语言的优点,但去掉了其影响程序健壮性的部分(如:指针、内存的申请与释放等)。Java程序不可能造成计算机崩溃。Java系统仔细检测对内存的每次访问,确认它是合法的,而且不致引起任何问题。不过,即使Java程序也可能有错误。如果出现某种出乎意料之事,程序也不会崩溃,而是把该例外抛弃。再通过异常处理机制,程序就会发现这类例外,并加以处理。

JAVA三大版本的区别

      SUN公司推出了JAVAEE、JAVASE、JAVAME适应各种不同平台上的开发和运行工作。我们以后的学习会围绕他们开展起来。

•    J2EE (JAVAEE)

–    Java 2 Enterprise Edition:

–    定位在服务器端的应用

•    J2SE  (JAVASE)

–    Java 2  Standard  Edition

–    定位在个人计算机上的应用

•    J2ME  (JAVAME)

–    Java  2  Micro  Edition

–    定位在消费性电子产品的应用上。 

JAVA语言为什么能够成功

        一个产品的成功和一个人的成功是一个道理。除了自身具备过硬的优势外,还需要那么一点点狗屎运,甚至狗屎运非常关键。就是我们所讲的天时地利人和。JAVA的成功除了自己具备跨平台特性外,更重要的是正好踩中了互联网发展的节奏。微软的成功除了windows好用外,也是正好踩中了个人电脑发展的节奏。所以,我们除了自己努力外,也需要出去走走努力才踩一坨狗屎才行!

---尚学堂老高扯淡语录

附:斯坦福大学的房产生意经

       斯坦福大学依靠自身庞大的校区,创建了斯坦福科技园(硅谷的前身),初期采用房租免费等方式,鼓励自己的毕业生在科技园创业、鼓励社会企业入驻。由于免费的方式再加上其他优惠的政策,吸引了大量的创业者加入进来。最终大家添柴加火,造就了今天的硅谷。这才是最高明的房地产商啊!相比我国的房产商杀鸡取卵式的发展,无语!北京五环外房价都3万多了,一个精英人才就算是年薪20万,买个100平的房子,需要不吃不喝15年!如果要吃喝的话,基本一辈子都在为这100平的房子打工!赤裸裸的剥削至此,还有什么话说!

---尚学堂老高扯淡语录 

附:跟斯坦福大学有关的IT公司

牛逼的大学,不可思议的大学。看看这个大学的毕业生和教授创立的公司:

1.    惠普公司

2.    SUN公司

3.    思科公司

4.    雅虎公司

5.    Google公司

6.    英特尔公司

7.    NVidia(最大的显卡公司)

8.    耐克(卖鞋的,斯坦福除了IT还有耐克)

斯坦福大学毕业生创立的小于10亿美金的中小公司就不说了。这八个大公司加起来的市值,估计远远超过大部分国家的鸡的屁了吧?

猜你喜欢

转载自www.cnblogs.com/xinshang520/p/9199498.html