前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >速读原著-Java核心技术(Java 发展简史)

速读原著-Java核心技术(Java 发展简史)

作者头像
cwl_java
发布2020-04-21 10:29:19
3500
发布2020-04-21 10:29:19
举报
文章被收录于专栏:cwl_Javacwl_Java

1.4 Java 发展简史

本节将介绍 Java 的发展简史。这些内容来自很多出版资料(最重要的是 SunWorld 的在线杂志 1995 年 7月刊上对 Java 创建者的专访。)

Java 的历史要追溯到 1991 年,由 Patrick Naughton 和 James Gosling (一个全能的计算机奇才)带领的 Sun 公司的工程师小组想要设计一种小型的计算机语言, 主要用于像有线电视转换盒这类的消费设备。由于这些消费设备的处理能力和内存都很有限, 所以语言必须非常小且能够生成非常紧凑的代码。另外, 由于不同的厂商会选择不同的中央处理器( CPU), 因此这种语言的关键是不与任何特定的体系结构捆绑在一起。这个项目被命名为“ Green”。

代码短小、 紧凑且与平台无关, 这些要求促使开发团队设计一个可移植的语言, 可以为虚拟机生成中间代码。

不过, Sun 公司的人都有 UNIX 的应用背景。因此, 所开发的语言以 C++ 为基础, 而不是 Lisp、 Smalltalk 或 Pascal。不过, 就像 Gosling 在专访中谈到的:“ 毕竟,语言只是实现目标的工具,而不是目标本身”。Gosling 把这种语言称为“ Oak ”(这么起名的原因大概是因为他非常喜欢自己办公室外的橡树)。Sun 公司的人后来发现 Oak 是一种已有的计算机语言的名字,于是, 将其改名为 Java。 事实证明这是一个很有灵感的选择。

1992 年, Green 项目发布了它的第一个产品,称之为“ *7”。这个产品具有非常智能的远程控制。遗憾的是, Sun 公司对生产这个产品并不感兴趣, Green 项目组的人员必须找出其他的方法来将他们的技术推向市场。然而, 没有一个标准消费品电子公司对此感兴趣。于 是,Green 项目组竞标了一个提供视频点播等新型服务的有线电视盒的项目,但没有成功(有趣的是,得到这个项目的公司的领导恰恰是开创 Netscape 公司的 Jim Clark。Netscape 公司后来对 Java 的成功给予了很大的帮助)。

Green 项目(这时换了一个新名字—“ First Person 公司”) 花费了 1993 年一整年以及 1994 年的上半年, 一直在苦苦寻求其技术的买家。然而,一个也没有找到( Patrick Naughton, 项目组的创立人之一,也是完成此项目大多数市场工作的人,声称为了销售这项技术, 累计飞行了 300 000 英里)。1994 年 First Person 公司解散了。

当这一切在 Sun 公司发生的时候, Internet 的万维网也在日渐发展壮大。万维网的关键是把超文本页面转换到屏幕上的浏览器。1994 年大多数人都在使用 Mosaic, 这是一个 1993年出自伊利诺斯大学超级计算中心的非商业化的 Web 浏览器( Mosaic 的一部分是由 Marc Andreessen 编写的。当时, 他作为一名参加半工半读项目的本科生, 编写了这个软件, 每小时的薪水只有 6.85 美元。他后来成了 Netscape 公司的创始人之一和技术总监, 可谓名利双收。)

在接受 SunWorld 采访的时候,Gosling 说在 1994 年中期, Java 语言的开发者意识到: “ 我们能够建立一个相当酷的浏览器。我们已经拥有在客户机 / 服务器主流模型中所需要的体系结构中立、实时、 可靠、 安全—这些在工作站环境并不太重要, 所以, 我们决定开发浏览器 实际的浏览器是由 Patrick Naughton 和 Jonathan Payne 开发的, 并演变为 HoUava 浏览器。 为了炫耀 Java 语言超强的能力, HoUava 浏览器采用 Java 编写。设计者让 HoUava 浏览器具有在网页中执行内嵌代码的能力。 这一“ 技术印证” 在 1995 年 5 月 23 日的 SunWorld上得到展示, 同时引发了人们延续至今的对 Java 的狂热追逐。

1996 年年初,Sun 发布了 Java 的第 1 个版本: 人们很快地意识到 Java1.0 不能用来进行真正的应用开发。的确, 可以使用 Java 1.0 来实现在画布上随机跳动的神经质的文本 applet,但它却没有提供打印功能。 坦率地说, Java 1.0 的确没有为其黄金时期的到来做好准备。后来的 Java 1丨弥补了其中的大多明显的缺陷 . , 大大改进了反射能力,并为 GUI 编程增加了新 的事件处理模型:不过它仍然具有很大的局限性。

1998 年 JavaOne 会议的头号新闻是即将发布 Java 1.2 版。这个版本取代了早期玩具式的GUI, 并且它的图形T.具箱更加精细而具有可伸缩性,更加接近“ 一次编写, 随处运行” 的承诺, 在 1998 年 12 月 Java 1.2 发布 7天之后, Sun 公司市场部将其名称改为更加吸引人的“ Java 2 标准版软件开发工具箱丨.2 版”。

除了‘ 标准版’ 之外,Sun 还推出了两个其他的版本:一个是用于手机等嵌人式设备的‘ 微型版”;另一个是用于服务器端处理的“ 企业版”。 本书主要讲述标准版。

标准版的 1.3 和 1.4 版本对最初的 Java 2 版本做出了某些改进, 扩展了标准类库,提高系统性能。 当然,还修正了一些 bug。在此期间, Java applet 采用低调姿态,并淡化了客户端的应用,但 Java 却成为服务器端应用的首选平台。

5.0 版是自 1.1 版以来第一个对 Java 语言做出重大改进的版本(这一版本原来被命名为1.5 版,在 2004 年的 JavaOne 会议之后,版本数字升至 5.0 )。经历了多年的研究,这个版本添加了泛型类型(generic type )(类似于 C++ 的模板,) 其挑战性在于添加这一特性并没有对虚拟机做出任何修改。 另外, 还有几个受 C# 启发的很有用的语言特性:“ for each” 循环、 自动装箱和注解。

版本 6 ( 没有后缀 .0 ) 于 2006 年年末发布。 同样,这个版本没有对语言方面再进行改进。但是,改进了其他性能,并增强了类库。随着数据中心越来越依赖于商业硬件而不是专用服务器,Sun Microsystems 终于沦陷, 于 2009 年被 Oracle 收购 _ Java 的开发停滞了很长一段时间。直到 201丨年 Oracle 发布了 Java的一个新版本,Java ?, 其中只做了一些简单的改进。 2014 年 ,Java 8终于发布,在近 20 年中这个版本有了最大的改变。Java 8 提供了一种“ 函数式” 编程方式,可以很容易地表述并发执行的计算。 所有编程语言都必须与时俱进,Java在这方面显示出非凡的能力。 表 1-1 展示了 Java 语言以及类库的发展状况。可以看到,应用程序编程接口(API) 的规模发生了惊人的变化。

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-04-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.4 Java 发展简史
相关产品与服务
云点播
面向音视频、图片等媒体,提供制作上传、存储、转码、媒体处理、媒体 AI、加速分发播放、版权保护等一体化的高品质媒体服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档