Java的历史外文翻译资料

 2022-07-06 03:07

History

James Gosling, Mike Sheridan, and Patrick Naught-on initiated the Java language project in June 1991.Java was originally designed for interactive television, but it was too advanced for the digital cable television industry at the time. The language was initially called Oak after an oak tree that stood outside Gosling#39;s Office; it went by the name Green later, and was later renamed Java, from a list of random words. Gosling aimed to implement a virtual machine and a language that had a familiar C/C style of notation.

Sun Microsystems released the first public implementation as Java 1.0 in 1995. It promised 'Write Once, Run Anywhere”(WORA), providing no-cost run-times on popular platforms. Fairly secure and featuring configurable security, it allowed network- and file-access restrictions. Major web browsers soon incorporated the ability to run Java applets within web pages, and Java quickly became popular. With the advent of Java 2 (released initially as J2SE 1.2 in December 1998—1999), new versions had multiple configurations built for different types Of platforms. For example, J2EE targeted enterprise applications and the greatly stripped-down version J2ME for mobile applications (Mobile Java). J2SE designated the Standard Edition. In 2006, for marketing purposes, Sun renamed new J2 versions as Java EE, Java ME, and Java SE, respectively.

In 1997, Sun Microsystems approached the ISO/IEC JTCI standards body and later the Ecma International to formalize Java, but it soon withdrew from the process. Java remains a de facto standard, controlled through the Java Community Process. At one time, Sun made most Of its Java implementations available without charge, despite their proprietary software status. Sun generated revenue from Java through the selling of licenses for specialized products such as the Java Enterprise System. Sun distinguishes between its Software Development Kit (SDK) and Runtime Environment (JRE) (a subset of the SDK); the primary distinction involves the JRE#39;s lack of the compiler, utility programs, and header files. On November 13, 2006, Sun released much Of Java as open source software under the terms of the GNU General Public License (GPL). On May 8, 2007, Sun finished the process, making all of Java#39;s core code available under free software/open-source distribution terms, aside from a small portion of code to which Sun did not hold the copy right. Sun#39;s vice-president Rich Green has said that Sun#39;s ideal role with regards to Java is as an 'evangelist.

Following Oracle Corporation#39;s acquisition of Sun Microsystems in 2009—2010, Oracle has described itself as the 'steward of Java technology with a relentless commitment to fostering a community of participation and transparency'.

Principles There Were five primary goals in the creation of the Java language: l.lt should be 'simple, object oriented, and familiar', 2.1t should be 'robust and secure'.

3.1t should be 'architecture neutral and portable' s 4.1t should execute with 'high

5.1t should be 'interpreted, threaded, and dynamic'.

Java Platform Main articles: Java (software platform) and Java Virtual Machine

One characteristic of Java is portability, which means that computer programs written in the Java language must run similarly on any supported hardware/operating-system platform. This is achieved by compiling the Java language code to an intermediate representation called Java bytecode, instead Of directly to platform-specific machine code. Java bytecode instructions are analogous to machine code, but are intended to be interpreted by a virtual machine (VM) written specifically for the host hardware. End-users commonly use a Java Runtime Environment (JRE) installed on their Own machine for standalone Java applications, or in a Web browser for Java applets. Standardized libraries provide a generic way to access host-specific features such as graphics, threading, and networking.

A major benefit Of using bytecode is porting. However, the overhead of interpretation means that interpreted programs almost always run more slowly than programs compiled to native executables would. Just-in-Time compilers Were introduced from an early stage that compile bytecodes to machine code during runtime. Implementations Sun Microsystems officially licenses the Java Standard Edition platform for Linux, Mac OS X, and Solaris. Although in the past Sun has licensed Java to Microsoft, the license has expired and has not been renewed. Through a network of third-party vendors and licensees, alternative Java environments are available for these and other platforms.

Sun#39;s trademark license for usage of the Java brand insists that all implementations be 'compatible' This resulted in a legal dispute with Microsoft after Sun claimed that the Microsoft implementation did not support RMI or JM and had added platform-specific features of their Own. Sun sued in 1997, and in 2001 won a settlement of US$20 million, as well as a court order enforcing the terms of the license from Sun. As a result, Microsoft no longer ships Java with Windows, and in recent versions of Windows, Internet Explorer cannot support Java applets without a third-party plugin. Sun, and others, have made available free Java run-time systems for those and other versions of Windows. Platform-independent Java is essential to the Java EE strategy, and an even more rigorous validation is required to an implementation. This environment enables portable server-side applications, such as Web services, Java Servlets, and Enterprise JavaBeans, as well as with embedded systems based on OSGi, using Embedded Java environments. Through the new Glassfish project, Sun is working to create a fully functional, unified open source implementation of the Java EE technologies. Sun also distributes a superset of the JRE called the Java Development Kit (commonly known as the JDK), which includes development tools such as the Ja

全文共48943字,剩余内容已隐藏,支付完成后下载完整资料


Java,是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由当时任职太阳微系统的詹姆斯.高斯林(James Gosling)等人于1990年代初开发。它最初被命名为Oak,目标设置在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在oak 几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,在1995年5月以'Java ”的名称正式发布了。Java 伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。Java编程语言的风格十分接近c 语言。继承了C 语言面向对象技术的核心,Java 舍弃了C 语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间。在JavaSE 1.5版本中Java又引入了泛型编程(GenericProgramming)、类型安全的枚举、不定长参数和自动装/ 拆箱等语言特性。

Java不同于一般的编译运行计算机语言和解释执行计算机语言。它首先将源代码编译成字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,这同时也在一定程度上降低了Java程序的运行效率。但在J2SE1.4.2发布后, Java的运行速度有了大幅提升。与传统程序不同Sun公司在推出Java之际就将其,作为一种开放的技术。全球数以万计的Java开发公司被要求所设计的Java 软件必须相互兼容。“ Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。Sun公司对Java编程语言的解释是;Java编程语訁是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。

Java的历史

Java语言最开始只是太阳微系统(SunMicroSystems) 公司在1990年12月开始研究的一个内部项目,太阳微系统公司的一个叫做帕特里克?诺顿的工程师被公司自己开发的C 和C语言编译器搞得焦头烂额,因为其中的API极其难用。帕特里克决定改用NeXT,同时他也获得了研究公司的一个叫做'Stealth计划”的项目的机会。'Stealth计划”后来改名为 “ Green计划”,詹姆斯高斯林和麦克·舍林丹也加入了帕特里克的工作小组。他们和其他几个工程师一起在加利福尼亚州门罗帕克市沙丘路的一个小工作室里面研究开发新技术,准下一代智能家电(如微波炉)的程序设计,太阳公司预料未来科技将在家用电器领域大显身手。团队最初考虑使用C 语言,但是很多成员包括太阳的首席科学家比尔·乔伊,发现c 和可用的API 在某些方面存在很大问题。工作小组使用的是内嵌类型平台,可以用的资源极其有限。很多成员发现C 太复杂以至很多开发者经常错误使用。他们发现C 缺少垃圾回收系统,还有可移植的安全性、分布程序设计、和多运行续劝能。最后,他们想要一种易于移植到各种设备上的平台。

根据可用的资金,比尔·乔伊决定开发一种集C语言和Mesa语言大成的新语言,在一份报告上,乔伊把它叫做“未来”,他提议太阳公司的工程师应该在C 的基础上,开发一种面向对象的环境。最初,高斯林试图修改和扩展C 的功能,他自己称这种新语言为C “,但是后来他放弃了。他将要创造出一种全新的语言,被他命名为'Oak ”(橡树),以他的办公室外的橡树命名。就像很多开发新技术的秘密工程一样,工作小组没口没夜地工作到了1992年的夏天,他们能够演示新平台的一部分了,包括Green操作系统, Oak的程序设计语言,类库及其硬件“最初的尝试是面向一种类PDA设备,被命名为star7,这种设备有鲜艳的图形界面和被称为'Duke ”的智能代理来帮助用户。1992年12月3口,这台设备进行了展示。同年11月,Green计划被转化成了'FirstPerson有限公司”,一个太阳公司的全资了公司,团队也被重新安排到了帕洛阿尔托。FirstPerson团队对建造一种高度交互的设备感兴趣,当时代华纳发布了一个关于电视机顶盒的征求提议书时(Request for proposal)#39; FirstPerson改变了他们的目标,作为对征求意见书的响应,提出了一个机顶盒平台的提议。但是有线电视业界觉得FirstPerson的平台给予用户过多的控制权,因此FirstPerson的投标败给了SGIO与3D0公司的另外一笔关于机顶盒的交易也没有成功,由于他们的平台不能在电视工业产生任何效益,公司被并回太阳公司。

Java和互联网1994年6月、7月间,在经历了一场历时三天的脑力激荡的讨论后,约翰.盖吉、詹姆斯.高斯林、比尔.乔伊、帕特里克·诺顿、韦恩·罗斯因和埃里克.斯库米,团队决定再一次改变了努力的目标,这次他们决定将该技术应用于万维网。他们认为随着Mosaic浏览器的到来,因特网正在向同样的高度互动的远景演变,而这一远景正是他们在有线电视网中看到的。作为原型,帕特里克.诺顿写了一个小型万维网浏览器,WebRunner,后来改名为HotJava。 Java和'Java#39;由于商标搜索显示,Oak己被一家显卡制造商注册,于是同年,Oak被改名为Java.当使用十六进制编辑器打开由Java 源代编译出的二进制文件(-class文件)的话,最前面的32位将显示为CA FEBABE,即词组'CAFE BABE'(咖啡屋宝贝)。[编辑] Java和浏览器1994 年10月,Hot-Java和Java平台为公司高层进行演示“ 1994年,Java 1.0a版本己经可以提供下载,但是Java和HotJava浏览器的第一次公开发布却是在1995 年3月23日SunWorId大会上进行的。升阳公司的科学指导约翰.盖吉声明 Java技术,这个发布是与网景公司的执行副总裁马克·安德森的惊人发布一起进行的,宣布网景将在其浏览器中包含对Java的支持。1996年1月,升阳公司成立了Java业务集团,专门开发Java技术。Java近况在流行几年之后, Java在浏览器中的地位被逐步侵蚀。它在简单交互性动画方面的用途己经完全被Adobe公司的Flash排挤,2005年Java倾向只被用于雅虎游戏那样的更为复杂的应用程序,Java同时遭受到来自微软的反对,他们决定在新版本的 InternetExplorer和Windows中不再附带Java平台。与此相反。在万维网的服务器端和手持设备上,Java变得更加流行。很多网站在后端使用JSP和其他的Java技术,在桌面系统上,独立的Java程序还是相对少见,这是因为Java 平台的运行开销较大,而许多人的电脑上没有安装Java,由于网络带宽在以前较小,下载Java曾经是个耗时的事情。但是随着计算机计算能力、网络带宽在10年中取得了很大的进步,同时虚拟机和编译器的质量得到了提高,许多应用程序得到了广泛的使用,包括:开源软件:NetBeans和Eclipse等软件开发工具、JEdit、Azureus BitTorrent客户端、JN。de操作系统、Apache软件基金会的Ant、Derby、Hadoop、Jakarta、POI和Tomcat、JBoss和GlassFish 应用服务器:商用软件:EIOffice(永中Office)、纯Java 3D游戏合金战士 Chrome、IBM Websphere、ColdFusion和WebLogic

目前Java提供以下三个版本:JavaPlatform, EnterpriseEdition (JavaEE: Java平台企业版)、JavaPlatform, StandardEdition(Java SE:Java平台标准版)、 JavaPlatform, MicroEdition (JavaME: Java平台微型版)JavaPlatform, Card Editiono Java开放源代码项目2006年SUN在JavaOne公布Java开放源代码项目,并推出Open.JDK计划。Java虚拟机、Java编译器和Java类库以GNU 通用公共许可证公开。

Java语言之所以被开发,是要达到以下五个目的:应当使用面向对象程序设计方法学、应当允许同一程序在不同的计算机平台执行、应当包括内建的对计算机网络的支持、应当被设计成安全地执行远端代码、应当易于使用,并借鉴以前那些面向对象语言(如C )的长处。Java技术主要分成几个部分:Java语言、运行环境JVM、类库。一般情况下说Java时并不区分指的是哪个部分,Java在1.5版本时,做了重大改变,太阳公同并1.5版本重命名为 Java 5.0。面向对象Java的特点之一就是面向对象,是程序设计方法的一种。 “面向对象程序设计语言”的核心之一就是开发者在设计软件的时候可以使用自定义的类型和关联操作代鴯和数据的实际集合体叫做“对象”。一个对象可以想像成绑定了很多“行为(代码)”和“状态(数据)”的物体。对于数据结构的改变需要和代码进行通信然后操作,反之亦然。面向对象设计让大型软件工程的计划和设计变得更容易管理,能增强工程的健康度,减少失败工程的数量。面向对象设计另外一个目标就是能产生很多的有关联的类,可以让软件的再开发变得简单。举例来说,很多软件工程都有同样的功能,尤其是很多应用了同一原理组织的软件工程,软件的二次开发者想自己为软件开发插件以增强功能的时候,绝对不想看到混乱的开发代码和管理计划意面向对象的目的就是不生产难懂且难以使用的代码,为软件各个功能群之间创建有效的通信通道。很多开源软件社区正在计划给软件作者提供更多的类来让软件的二次开发变得简便。跨平台性Java语言的第二个特性就是跨平台性,也就是说使用Java语言编写的程序可以在编译后不用经过任何更改,就能在任何硬件设备条件下运行。这个特性经常被称为“一次编译,到处运行”。执行Java应用程序必须安装JavaRuntimeEnvironment (JRE), JRE内部有一个Java虚拟机()a、Virtual Machine,JVM)以及一些标准的类库(Class Library)o通过JVM的虚拟机才能在电脑系统执行Java应用程序(Java Application)#39;这与Net Framework的情况一样,所以电脑上没有安装JVM#39; 那么这些程序将不能够执行。实现跨平台性的方法是大多数编译器在进行Java 语言程序的编码时候会生成一个用字节鴯(Bytecode)写成的“半成品#39;#39;,这个“半成品”会在Java虚拟机(解释层)的帮助下运行,虚拟机会把它转换成当前所处硬件平台的原始代码。之后,Java虚拟机会打开标准库,进行数据(冬片、线程和网络)的访问工作。主要注意的是,尽管己经存在一个进行代码译的解释层,有些时候Java的字节码代码还是会被JIT编译器进行二次编译。有些编译器,比如GCJ,可以自动生成原始代鴯而不需要解释层。但是这些编译器所生成的代码只能应用于特定平台。并且GCJ目前只支持部分的JavaAPI.甲骨文公司对于Java的许可是“全兼容的”,这也导致了微软和升阳关于微软的程序不支持RMI和JM接口、并且增加特性为己所用的法律争端。升阳最终蠃得了官司,获得了大约两千万美元的赔偿,法院强制要求微软执行升阳公司关于Java的许可要求。作为回应,微软不再在Windows 、系统中捆绑Java,最新的Windows版本,WindowsVista和InternetExpIorer7.0 版本也不再提供对于Java应用程序和控件的支持。但是升阳公司和其他使用 Java运行时系统的公司对于微软的操作对用户提供无偿的第三方插件和程序支持。Java语言使用解释层最初是为了轻巧性。所以这些程序的运行效率比c 语言和C 要低很多,用户也对此颇有微词。很多最近的调查显示Java的程序运行速度比几年前要高出许多,有些同样功能的程序的效率甚至超过了C 和C语言编写的程序。

Java语言在最开始应用的时候是没有解释层的,所有需要编译的代码都直接转换成机器的原始代码。这样做的后果就是获得了最佳的性能,但是程序臃肿异常。从JIT技术开始,Java的程字都经过一次转换之后才变成机器码。很多老牌的第三方虚拟机都使用一种叫做“动态编译'的技术,也就是说虚拟机实时监测和分析程序的运行行为,同时选择性地对程序所需要的部分进行编译和优化。所有这些技术都改善了代码的运行速度,但是又不会让程序的体积变得失常。程序的轻便性事实上是软件编写很难达到的一个目标,Java 虽然成功地实现了“一次编译,到处运行”,但是由于平台和平台之间的差异,所编写的程序在转换代码的时候难免会出现微小的、不可察觉的错误和意外。

有些程序员对此非常头疼,他们嘲笑Java的程序不是“一次编译,到处运行而是“一次编译,到处调试”。

平台无关性让Ja、#39;a在服务器端软件领域非常成功“很多服务器端软件都使用Java或相关技术创建。

Java的性能和复杂性

关于Java的批评Java试图通过新的方式解决软件编写的复杂性很多人认为Java语言做到了它承诺的一切。但是Java并不是一门完美的语言。整体性问题并不是所有的工程和环境需要企业级别的复杂性,比如一个简单的个人网站或者独自编程的程序师所写的程序,这些程序师会发现Java的复杂管理对于自己要做的程序来说过于强大了·一些人觉得Java在面向对象上面做的没响Ruby和Smalltalk纯粹。但是最新出现的用Java实现的语言Groovy解决了这些问题。

作为一种己经创建的新技术,Java显然综合了很多语言的特性,比如C 、 C语言、Python等等。一些对于Java的评论认为Java的不变性在动摇。

语言问题有些程序师不喜欢原始类型(primitivetype)和类(class)的分离,尤其是那些曾经使用过Smalltalk和Ruby的程序师。Java的代鴯相对于其他的代码来说过于冗长,这

全文共13556字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[10276],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。