码迷,mamicode.com
首页 > 编程语言 > 详细

Java历史[史上最详细的阐述了Java发展的历史过程]

时间:2020-07-20 15:29:47      阅读:73      评论:0      收藏:0      [点我收藏+]

标签:更新   除了   个数   ems   招聘   垃圾回收   sun公司   中学   standard   

  Java历史

 

  学习Java语言之前,我觉得大家应该是从头开始,对吧?不管你之前是学过还是没学过,都和学习某一个知识一样,从头开始去了解它,然后到这个深入的掌握,到最后你可能理解并且灵活的运用。所以它肯定是这样的一个过程,所以不管你们之前有没有学过,反正建议大家都认真地看一看。那么,这“头”,哪里是“头”呢?在学习Java语言之前呢,我们得先了解它的历史背景,我觉得这应该是一个“头”,因为你学习任何一个东西的话得先了解它。是这样的把?也许你会觉得这个东西对于你来讲会无所谓,只要我会写程序就可以了,那关键的问题是,你在以后去工作当中,跟别人谈论的时候,你做什么的呀?你得跟人解释啊,解释我是做软件开发的,得跟家人解释我是做Java的,回头家里人就搞不清楚了。所以我觉得历史背景应该算作一个知识点的完整度吧,所以大家需要了解一下。但是这个东西也可以在网上查得到哈,去网上一查,百度一搜,随便都有,或许大家之前也了解过相关的信息。作为知识点的完整度,就当听故事吧,好吧。

  咱们的第一堂课,就从Java的“头”(历史)开始说一说。那么我们想要了解它的这个背景呢,我们应该是从这个Java的创始人开始说起,对吧。讲故事嘛,总得有个头,所以一定得从这个创始人来说起。

  创始人是谁呢?首先,创始人他是一个男人,其次,这个创始人他不是中国人,哈!你觉得我这是在废话,是吧,都知道,所以不闹了。这个,我算一下,从1955年到现在有多少年了?60多年了吧?嗯,对,60多年前,在这么一个寒冷的冬天,在加拿大,还不是一个城市里,是个小村庄里。在这个地方,在60多年前加拿大的一个小村庄里,冬天,在这个地方呢,有一个小孩,一个小孩,一个男孩,呱呱坠地了。就是,一个小男孩在60多年前出生了嘛。然后,这个小男孩他的家长给他起名字,是这么起的,他的名字叫James。但这个名字起完了之后呢,其实到后来谁也没有想到,这个小男孩,这个叫James的长大了之后,他会改变整个计算机的领域,这个行业。他是一个计算机的天才,计算机语言的天才。大家要明白,这个James可不是那个打篮球的詹姆斯哈登哈,不是,不是这样的哈。他这个James呢,名字是James,他的姓氏肯定是他的家族给的姓氏嘛,他的名字是这样写的,他的名字是James-Gosling。这个是他的名字,所以翻译过来的中文呢,我们应该这么翻译,叫做詹姆斯-高斯林。这么一个名字,但是很多,我们这个互联网行业的朋友哈,因为开玩笑,认为这个“高斯林”发音特别像那个中文“高司令”,所以很多互联网当中的这个IT圈的朋友啊就开玩笑跟着叫这个James-Gosling叫高司令。那么这个高司令就厉害了,很厉害。

  高司令从小就喜欢电子技术,从小就喜欢,爱鼓捣东西,就是他特喜欢拆卸、重组、重组完了之后再拆卸、再重组,喜欢不断地钻研。所以呢,这个James-Gosling,他从小就喜欢弄这个电子的设备。

  他12岁的时候就很厉害了,他干嘛了呢,他用这个报废的电话,就是把家里的电话给拆了,和这个电视机,当然不是好的,都是报废的电话、电视机,他把它给拆开了,拆来干嘛呢?去拿这里面的零件,用里面的零件再进行组装,把他做成一个电子游戏机,这小孩很厉害,是吧?12岁,我想想我12岁,我12岁的时候应该,那个时候别说拆了,我觉得我玩游戏好像都不行,你看这小孩,12岁就开始拆卸电路板,弄个游戏机,就是这小孩从小就很热爱这相关的事情,喜欢捣鼓电子零部件这种事情。你们可以想想,他在这样一个小村庄里,这个小村庄其实不大,对吧?所以在这个小村庄里,好多人都知道这个事情,所以村庄里很多人知道Gosling这个小男孩在弄这个事情,所以附近的村民家里很多电器坏掉了就找他修,不光是小件,据说家里的很多大件,比如农民用的收割机坏掉了,也找他修。所以你看这小孩常常就帮人家修理东西,很厉害。

  再往后,在他14岁的时候就更厉害了,14岁的时候干什么了呢?James他参加了一个他们中学组织的一个去大学参观的活动。就是他所在的中学组织了一个活动,这个活动就是去附近的一所大学参观。为了他们可能上大学的时候打好基础。所以这个小孩就跟着学校一起去了,但这小孩小时候脑子很灵活,我觉得看来就是觉得有点超于常人的感觉,这小孩很坏哈,他干什么了呢?他去这个大学的时候,他进入这个大学参观的是计算机中心,并且把计算机中心的密码给记住了,说他坏也不是,说他聪明吧,就这样的。想想如果中国的小孩记住了这个东西,那很不安全的,让你去了就很麻烦,但外国的老师就不这样的。所以这小孩把大学中心的密码记住了之后呢,从此以后就迷上了这个计算机相关的东西。所以从那开始,偷偷的溜进计算机中心,开始自己学习编程,因为大家都知道计算机中心有很多资料嘛,对不对?这些资料专门供给大学生和老师们用的,所以他就偷偷溜进去了,偷偷溜进去这个过程,大家想想,那个时候在大学里是没人管的,包括现在,在一个大学里头,很多人偷偷进去是很危险的,大学肯定会制止这个事情,但国外很多人就不是这样的。他们老师也知道,一个小孩进来也没什么威胁,小孩进来,一看也不是干什么坏事的,他是来这学习的。所以大学的老师知道这个事情但没有阻止他。

  但是他经过长时间的,慢慢的学习。一年以后,也就是15岁的时候,大学里面就产生了这么一个小问题。大学里面有一个天文系,这个天文系天天观察那些什么卫星什么的,数据是很庞大的,所以天文系觉得这个数据在计算起来看起来非常非常的麻烦,所以他们想要去编写一套系统。这套系统干嘛的呢?用来分析卫星、天文等数据。但是天文系的人可能对这个计算机是不太懂的,他们只能拿来用,但你要他们写程序可能就差一些,所以天文系就想找其他人来帮忙。所以但是他们除了老教授带领一些人编写这个程序以外,他们知道James这个小孩有这个能力,所以他们在编写这个系统的时候招聘James作为临时的编程员。所以James在15岁的时候在大学里头就有这么一个编程序的工作,做一个临时的小程序员,很厉害。所以大家看,他从小就接触这些东西很早,比我们一般的人要接触的早一些。

  随着James-Gosling的发展,到80年代的初期,他上学毕业了,获得了一个博士学位,考到博士学位之后呢,毕竟最后还是得要工作嘛,所以有很多大型的公司招募他,他去的第一家公司就是非常非常有名的,大家后来听到的公司叫做IBM公司,这时James-Gosling的第一家公司,非常有名,去了以后,当时在80年代的时候,可能计算机还没有那么发达,那么他去了以后,去那做了什么呢?他去那做的第一个工作是设计IBM公司第一代工作站,第一代工作站是IBM公司一个小项目,他们做的这个小项目其实并不被IBM公司高层所看好。所以对于James这种从小就痴迷技术的一个人,在公司里整个项目不被看好,相当于整个部门就不受重视了。

  这让James很失望,所以一段时间后,他就跳槽了,跳槽之后去了哪呢?就是大家后来熟知的SUN公司,“SUN”这个词的全称是Stanford University Network(斯坦福大学网络公司) ,后来SUN公司注册的时候注册的公司名字是SUN Microsystems。SUN公司相比IBM公司就不一样了,这个SUN公司他就非常注重人才,也非常注重对于技术的使用。所以James来到SUN公司之后就如鱼得水一般,因为James从小就痴迷技术,而公司又很重视技术。但是即便是这样,他们的项目并没有成为流行的产品,也就是当时的SUN公司名气还不是那么大。当然,在那个年代,80年代的时候,在软件开发这个行业,竞争其实很激烈的,但那时候大家都还在摸索阶段,都想成为一个引领时代发展的公司,SUN公司也不例外,所以当时SUN公司就想在这竞争压力都很大的环境下成立了一个技术小团队,让这个团队试图预测未来软件行业的发展,然后引领时代的潮流,所以当时SUN公司就成立了一个小的研发团队,试图预测未来的软件技术发展趋势。小团队成立之后,就需要一个负责人,当时Gosling这个人很牛,所以他们当时就派James-Gosling成为这个项目的负责人。所以James从IBM公司不受重视,到了SUN公司后一下子就重视起来了。在当时,最强大的公司是微软公司,微软公司当时有很多编程语言,最著名的最火的是C++,当时更多的是嵌入式的小系统,都是将C++程序嵌入到芯片里面使用,C++程序其实很大,而且芯片种类还很繁杂,导致很多编程人员很苦恼。就是在当时只有C++很火的时候,这样的一个背景之下,James团队接手了一个Green项目,叫做绿色计划,他们想要做这个智能家居,但由于C++语言存在众多的弊端,其中最大的弊端就是跨平台性差,当时的跨平台指的是各种不同公司不同规格的芯片。很麻烦,这时候怎么办呢?所以James他们这时候就想,这个语言嘛,不就是一套规范,那么语言是一套规范的化,那么在开发的时候很麻烦,那么我们就不如开发一套自己的产品,也就是开发一套全新的语言规范。就是自己公司里面自己用,但开发一套全新的也很麻烦,于是他们沿用了C++语言里的一些语法结构,提高了开发效率,但毕竟是一套新的语言规范,所以就需要取一个名字。老外取名字比较随便,不像我们,取个名字还得算一下,老外就不讲究这些,一般比较随便。James作为团队领导人,取名字自然就是他该去想的事情,所以他很纠结,他在办公室很纠结,纠结的时候,一转头,看到窗外有一棵大树,是他们当地的一种橡树,橡树有一种英文的名字叫做OaK。老外起名字就这样,起名字起不出来纠结呢刚好看到一棵树,一拍脑门,咱们这个新的语言就叫OaK吧,多随便,就这样名字就这样定了。这样的话,在公司内部就产生了一套新的语法规范,公司内部用的。这套语法规范摒弃了C++很多不好的东西,比如C++过于庞大以及不能跨平台等。他们拿着OaK这套语法规范开发Green项目然后成功了。

  1992年的夏天,想将OaK语言连同Green项目进行展示,展示给硬件生产商,说服他们使用自己的产品和语言。但是硬件生产商并不买账,因为他们并不确定OaK语言能用,他们更习惯使用C++,甚至很多厂商对OaK语言还一无所知呢,所以很难为这种新的语言给他们投资,风险很大。这样的话没有得到很多生产商的支持,他们没有进入这个市场,所以就被暂且的搁置了。所以他们花了很多时间研究的一套新的语言就这么搁置了,很可惜,尤其是对咱们这种做技术的,开发一个东西就跟自己生的一个小孩子一样,天天费劲心思弄好的一个东西没有得到别人的重视。但是也没有办法,James没有那样的能力呀,搁置就搁置吧,以后再找一个合适的时机,看以后能不能将这个精心研发的东西推广出去。发布的时机很重要,那发布的时间是什么时候呢?在美国有一个非常著名的地方,叫硅谷,硅谷这个地方是很多IT硬件生产商的聚集地,他们每年会在这个地方召开一个全球性的IT盛会,于是SUN公司就像把握这种难得的契机,于是,他们在1995年的时候,他们去参加这样一个全球性的IT盛会,想在这个盛会上发布他们的产品,想让硬件厂商、软件公司了解他们的东西,但是发现了一个问题,遇到个什么问题呢?就是OaK这个名字早就被其他公司注册成商标了,在外国是很注重商标的保护的,所以他们就需要改一个新的名字,然后他们的名字怎么改的呢?后来他们就改成了现在大家认识的,就叫Java。

  它为什么叫Java呢?我看过两个版本,在网上找了很多资源,有一个版本说是这样的,说Java四个字母是J  And V  A组成,J是指James,V是指文森特,A是指埃利蒙斯,但其实不是这样的。还有另外一种,我觉得这种更为贴切一点,就是JAVA这四个字母取自一个地名,是印度尼西亚国家有一个地方叫做爪哇岛,所以爪哇岛英文名就是java。印度尼西亚的爪哇岛其实是一个全球闻名的地方,为什么全球闻名呢?其实这个地方盛产一种咖啡豆,然后这种咖啡豆变成了世界最有名的咖啡,叫猫屎咖啡。猫屎咖啡为什么有名呢?是因为当地有一种猫叫麝香猫,因为没什么东西吃,所以它们经常爬到树上去,专门吃这个咖啡豆,后来很多科学家研究,这种猫吃了咖啡豆之后没办法消化,就排泄出来了,然后把排泄出来的咖啡豆的表皮去掉然后去做咖啡,发现这样做出来的咖啡非常非常的香纯。所以我觉得James他们想名字就是想让他们取的名字想印尼爪哇岛一样的有名,被全球的人都知道。java的安装包也是一个咖啡的形状,所以我觉得跟这个名字的由来很像。所以一切准备就绪之后,在1995年5月23日这天,SUN公司在美国IT盛会上,正式发布了java语言,当时只是告诉全球,在我们SUN公司有这么一个语言的存在,但其实还并不完善。在隔了一年之后,也就是1996年1月的时候,发布了一款开发工具包,工具包称之为JDK1.0版本。标志着Java语言成为了一门独立的编程语言了,拥有自己的开发工具了,大家可以去我们官网下载了。1997年2月的时候,更新了JDK1.1版本。1998年12月的时候,发布了一个全新版本,JavaEE企业版。1999年6月的时候,SUN公司发布了java第二代平台(即java2.0版本),相当于全新的革新,这个版本发布之后,将这门语言进行细化了一下,就是细化了三个不同的小版本,这三个小版本干嘛的呢?是做不同方向的。它是这样写的

  Java2  Standard Edition        java第二代平台标准版    桌面级  C/S(客户端/服务器)

  Java2  Enterprise   Edition    Java第二代平台企业板              企业级  B/S (企业级开发)

  Java2  Micro    Edition           Java第二代平台微型板    移动端

  简写:

  J2SE     Java第二代平台标准版    桌面级  C/S(客户端/服务器)

  J2EE  Java第二代平台企业板              企业级  B/S (企业级开发)

  J2ME    Java第二代平台微型板    移动端

后面还在不断的完善,在2000--2002年期间,更新了JDK1.3  JDK1.4,Z主要是提升JDK的性能,完善JDK的性能。2004年的时候发布了一个里程碑式的版本,叫JDK1.5版本,这个版本增加了很多新特性。后来这个里程碑式的版本就不叫JDK1.5了,而是直接改为了JDK5.0版本了。再往后,到了2005年的时候,还是在不断完善,SUN公司发布了Java6,是最经典的版本,也是留存最久的版本。再到后面,公司就产生一些问题了,比如财务、运营等问题。公司内部出现一些问题。这个时候,出现了一个新的公司,叫做甲骨文公司(Oracle公司) 。Oracle公司现在是全球第二大互联网公司,第一是微软,Oracle公司之前是没有那么强大,Oracle公司是怎么一步步发展起来的呢?它采用的方式是并购,他们公司的资金很完善,所以在2009年Oracle公司以市价74亿¥并购了SUN公司,所以Java连同SUN公司的技术就易主了。所以2009年以前,Java语言是SUN公司的,2009年以后Java语言是Oracle公司的了。2009年之后Java语言就由Oracle公司进行更新了,但是Oracle公司不像SUN公司时候那样了,因为Oracle公司有很多很多不同的业务,它不止专注于这一个Java语言的产品,所以他们的更新速度放慢了,不像之前年年更新。到2011年三年的时间,Oracle公司跟新了一个新版本Java7版本。又隔了3年,2014年的时候,Oracle公司发布了Java8,2017年的时候发布了Java9。

  Java之所以现在如此火爆,除了它的历史背景之外,还有它自身具有很多的特性。有些什么特性呢?首先是Java语言的跨平台性,以前的跨平台是指不同厂商的芯片,现在是指不同版本的操作系统。然后是Java语言面向对象的思想,是一种思想。其次是Java语言的简单性,它摒弃了C++很多的弊端。再往后Java语言具有健壮性(鲁棒性),它具有完善的垃圾回收机制、异常处理机制。同时还具有多线程性,并行操作,提高了执行的性能。

Java历史[史上最详细的阐述了Java发展的历史过程]

标签:更新   除了   个数   ems   招聘   垃圾回收   sun公司   中学   standard   

原文地址:https://www.cnblogs.com/ZNV5/p/13344869.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!