Java 2ME和Java的世界外文翻译资料
2022-09-09 16:14:41
Java 2 Micro Edition and the World of Java
1 Introduction
The computer revolution of the 1970s increased the demand for sophisticated computersoftware to take advantage of the ever-increasing capacity of computers to process data.The C programming language became the linchpin that enabled programmers to buildsoftware that was just as robust as the computer it ran on.
As the 1980s approached, programmers were witnessing another spurt in the evolutionof programming language. Computer technology advanced beyond the capabilities of the C programming language. The problem wasnrsquo;t new. It occurred previously and caused the demise of generations of programming languages. The problem was thatprograms were becoming too complicated to design, write, and manage to keep up with the capabilities of computers. It was around this time that a design concept based on Simula 67 and Smalltalk (from the late 1960s) moved programming to the next evolutionary step. This was the period when object-oriented programming (OOP), and with it a new programming language called C , took programmers by storm.
In 1979, Bjarne Stroustrup of Bell Laboratories in New Jersey enhanced the C programming language to include object-oriented features. He called the language C . (The is the incremental operator in the C programming language.) C is truly an enhancement of the C programming language, and it began as a preprocessor language that was translated into C syntax before the program was processed by the compiler.
Stroustrup built on the concept of a class (taken from Simula 67 and Smalltalk), from which instances of objects are created. A class contains data members and member functions that define an objectrsquo;s data and functionality. He also introduced the concept of inheritance, which enabled a class to inherit some or all data members and member functions from one or more other classes—all of which complements the concepts of object-oriented programming.
By 1988, ANSI officials standardized Stroustruprsquo;s C specification.
2 Enter Java
Just as C was becoming the language of choice for building industrial-strength applications, another growth spurt in the evolution of programming language was budding, fertilized by the latest disruptive technology—the World Wide Web. The Internet had been a well-kept secret for decades before the National Science Foundation (who oversaw the Internet) removed barriers that prevented commercialization. Until 1991 when it was opened to commerce, the Internet was the almost exclusive domain of government agencies and the academic community. Once the barrier to commercialization was lifted, the World Wide Web—one of several services offered on the Internet— became a virtual community center where visitors could get free information about practically anything and browse through thousands of virtual stores.
Browsers power the World Wide Web.A browser translates ASCII text files written in HTML into an interactive display that can be interpreted on any machine. As long as the browser is compatible with the correct version of HTML and HTTP implementation, any computer running the browser can use the same HTML document without having to modify it for a particular type of computer, which was something unheard of at the time. Programs written in C or C are machine dependent and cannot run on a different machine unless the program is recompiled.
The success of the Internet gave renewed focus to developing a machine-independent programming language. And the same year the Internet was commercialized, five technologists at Sun Microsystems set out to do just that. James Gosling, Patrick Naughton, ChrisWarth, Ed Frank, and Mike Sheridan spent 18 months developing the programming language they called Oak, which was renamed Java when this new language made its debut in 1995. Java went through numerous iterations between 1991 and 1995, during which time many other technologists at Sun made substantial contributions to the language. These included Bill Joy, Arthur van Hoff, Jonathan Payne, Frank Yelin, and Tim Lindholm.
Although Java is closely associated with the Internet, it was developed as a language for programming software that could be embedded into electronic devices regardless of the type of CPU used by the device. This is known as the EmbeddedJava platform and is in continuous use today for closed systems.
The Java team from Sun succeeded in creating a portable programming language, something that had eluded programmers since computers were first programmed. Their success, however, was far beyond their wildest dreams. The same concept used to make Java programs portable to electronic devices also could be used to make Java programs run on computers running Microsoft Windows, UNIX, and Macintosh. Timing was perfect. The Internet/intranet had whetted corporate Americarsquo;s appetite for cost-effective, portable programs that could replace mission-critical applications within the corporation. And Java had proven itself as a programming language used to successfully develop machine-independent applications.
3 Java Virtual Machine
Writing Java programs is similar to writing C programs in that the programmer writes source code that contains instructions into an editor, or in an integrated development environment, and then the source code is compiled. However, thatrsquo;s where Java and C part ways. The compiling and linking process of a C program results in an executable that can be run on an appropriate machine. In contrast, the Java compiler converts Java source code into bytecode that is executed by the Java Virtual Machine (JVM).
Machine-specific instructions are not included in bytecode. Instead, they already reside in the JVM, which is machine specific. This means that the bytecode might contain fewer instruct
剩余内容已隐藏,支付完成后下载完整资料
Java 2ME和Java的世界
- 介绍
20世纪70年代的电脑革命增加了对复杂计算机软件的需求,从而可以不断增加精密计算机能力来处理数据的能力。C编程语言成为能使程序员开发软件就像计算机运行一样流畅的关键。
上世纪80年代以来,程序员们见证编程语言又一次井喷式的演变。C 编程语言的能力已经不能满足先进的计算机技术了。这个问题并不是新的。它造成了一代又一代编程语言的更新换代。问题是,程序过于复杂的设计,从而使编写和管理的能力跟不上计算机技术的发展;就是这个时候,两种基于设计概念的编程语言Simula 67和Smalltalk (从上世纪60年代末)带来了接近编程语言未来前景的循序渐进的步骤。这是围面向对象编程(OOP)的外径时,和一个新的编程语言为C ,把程序员的风暴。这期间,当面向对象编程( OOP ),与它一种新的编程语言,所谓的C 在程序员中掀起了一场风暴。
在1979年,Bjarne Stroustrup贝尔实验室在新泽西州增强的C语言编程,包括面向对象的特征。他称之为C 语言。( 在C编程语言增强的承载符号。)C 是真正增强的C编程语言,它开始作为一个预处理语言,翻译成C语法之前由编译器处理程序。
Stroustrup建立类的概念(从Simula 67和Smalltalk中借用了概念),从而类可以创建对象的实例。类包含定义对象的数据和功能的数据成员和成员函数。他还引入了继承的概念,使一个类继承了一些或所有的数据成员和成员函数从一个或多个其他类,其中补充了面向对象编程的概念。
1988年由ANSI官员将C 标准化。
- 走进java
正如C成为企业开发所选择的语言时,由于最新的突破性技术万维网的出现,另一种编程语言正在萌芽,并逐渐成熟。近些年来互联网对人们来说还是个秘密,直到前美国国家科学基金会(监督互联网的机构)消除了防止其商业化的障碍。直到1991年,当它向商贸开放时,互联网几乎是政府机构和学术界的专利。一旦商业化的障碍被取消,万维网提供的几个服务,在互联网上成为一个虚拟社区中心,游客可以得到几乎任何的免费咨询和浏览数以千计的虚拟商店。 浏览器为万维网提供了强大的动力。浏览器把用HTML编写的ASCII文本文件转化成为一个互动的显示功能,并可以在任何计算机上编译运行。只要浏览器是兼容HTML和HTTP协议的正确版本,任何一台计算机上运行的浏览器可以使用相同的HTML文档,而无需指定一个特定类型的计算机,这在以前是闻所未闻的。而用C或C 编写的程序是依赖于机器的,它们不能运行在不同的机器上,除非重新编译程序。
互联网的成功,又成功使人们把重点放到发展一门独立于机器的编程语言。和同年在互联网上被商业化,五个科技工作者杰姆斯鹅,帕特里克诺顿,chriswarth,ED弗兰克、谢里丹和迈克在Sun Microsystems开始这样做。他们花了18个月的时间来开发新的编程语言,他们称之为Oak,后来更名为java,1995年这种编程语言首次亮相。java经历了1991到1995之间的无数次变革,这段时期在SUN公司的许多其他技术人员也对这门语言的发展做出了重大贡献。Joy,阿瑟范霍夫,乔纳森佩恩, Yelin , 添佩尔都分享了成功的喜悦。
虽然java与互联网密切相关,但已开始这是为了开发一种可以被嵌入到电子设备中作为一个软件的编程语言,而无论所用装置的CPU类型。这也是现在被很多人称为embedded java的平台。
从SUN公司成功建立了一种可移植的编程语言开始,java团队的程序员进行了首次编程,有些已经可以实现了。然而,他们的成功远远超出了他们最狂野的梦想。同样可以使java程序运行在各种可移植的电子设备上,也可以使java程序运行在安装了Microsoft Windows,Unix和Macintosh的电脑上。这个时机是很完美的。因特网/内部网已使美国企业为符合公司成本效益,而培养能开发应用于公司的可移植程序的兴趣。java已经证明了自己作为一种曾开发独立于机器的应用程序设计语言。
- java虚拟机
编写java程序类似于编写C程序,程序员编写的源代码,是包含指示的源代码,成为一个编辑器,或在一个集成开发环境中对源代码编译。不过,这也就是java和C 一部分的方式。在编译和联结的过程中,一个C 程序可以运行在一个适当的可执行的机器上。相比之下,java编译器将java源代码转换成字节码,由java虚拟机(JVM)执行。
特定机器上的指令是不包含字节码的。相反,他们已经存在于JVM,这是在特定机器中存在的。这意味着该字节可能包含的C 程序要翻译的指令要少。 虽然java编译器生成的字节码必须由JVM在运行时翻译,需要翻译的指令的数量通常是最小的,并且这已经由java编译器优化。
- 未来的世界:J2ME
请记住,java是在消费和工业产品中开始作为一种编程语言创建程序嵌入式系统微机发现的,如那些用来控制汽车和家用电器的微机。Sun公司的开发团队曾在上世纪90年代初用java解决幼稚的嵌入式电脑市场的编程的需求,但这种努力是更侧重于来自互联网的吸引力的机会。
在世纪交替之年由于这些机会已得到了解决,一种新品种的便携式通信给其他设备带来了机会。手机设备扩展了J2ME:从语音通信设备到语音文字通信设备。而便携式电子电话簿演变成了个人数字助理。芯片制造商在这个时间发布的新产品,旨在从台式电脑转移计算能力到移动的小型电脑控制的燃气水泵,有线电视盒,和其他组合的电器。
java的下一个演变的时机是正确的。然而,不是增加额外的java API,SUN公司的团队,使用Java Community Process计划,取消了java编程语言和java虚拟机。他们从嵌入式系统和微机设备剥夺了java的API和JVM到最小编码所要求提供的情报。由于这些设备资源方面的限制和强加的硬件设计,这是必要的。他们的努力结果是J2ME。J2ME是减少了java的API和java虚拟机是设计用来运作稀疏可用的资源在新品种的嵌入式计算机和微型计算机的版本中。
- 组织J2ME
传统的计算设备必须使用相当标准的硬件配置,如显示器,键盘,鼠标,和大量的内存和永久存储。然而,新一代的计算设备缺乏硬件配置和设备之间的连续性。一些设备没有显示屏,永久存储,键盘或鼠标。其中小的计算设备的记忆提供情况是不一致的。小型计算设备之间缺乏统一的硬件配置对Java Community Process计划是一个艰巨的挑战,这是为JVM和J2ME的小型计算设备提供标准。
J2ME必须服务于许多不同种类的小型计算设备,包括屏幕电话,数字机顶盒用于有线电视,手机和个人数字助理。对于Java Community Process的挑战是建立一个java标准,可以用在小型计算设备和非标准的硬件配置的实现。Java Community Process程序使用双重方法解决小型计算设备的需求。首先,他们定义了java运行时的环境和核心类,并能在不同的设备上运行。这被称为配置。配置定义了一个特定的小型计算设备的java虚拟机。有2种配置,一种用于手持设备,另一种用于插入式设备。其次,Java Community Process程序定义为小型计算设备的类别分布。一个配置文件由类定义,使开发人员能够实现相关的小型计算设备的功能。
6.J2ME配置
为J2ME的语法设计了两种配置方式。这些受限连接设备配置(CLDC)和连接设备配置(CDC)。CLDC是专为16位或32位的内存数量有限的小型计算设备。
CLDC设备通常有160K到512KB内存和电池供电。他们也使用了不一致的、小带宽的网络无线连接,可能没有一个用户界面。CLDC设备使用Kjava虚拟机(KVM)实现,这是一个精简版的JVM。CLDC设备包括寻呼机、个人数字助理、手机、专用终端和手持消费电子设备,这些设备的内存在128KB和512KB之间。
CDC设备使用的是32位结构,至少有两兆字节的内存,并实现了完整的JVM功能。CDC设备包括数字机顶盒、家用电器、导航系统、销售点终端、智能手机。
- J2ME文件
一个配置文件构成的java类,其执行的功能是为一特别小的计算装置或一类的小型计算设备的。小型计算技术的不断发展,J2ME的配置文件的发展也是一个持续的过程。配置文件已被定义为编写文本。这些即是Foundation profile,Game Profile,MIDP,PDA personal profile,personal profile,personal basis profile,和RMI personal profile。
■基础配置文件是用来做CDC和配置的,而这种配置文件或CDC几乎是所有其他的配置文件与CDC的核心,因为配置的基础个人资料包含核心的Java类。
■Game Profile也可以用来与CDC配置,并包括为开发游戏申请任何一个小的计算设备的使用,和CDC的配置所必要的类。
■移动信息设备配置文件(MIDP)是用来与cldc 配置和包含的类别提供本地的存储空间,用户界面,和联网能力,从而使应用程序运行在一个移动计算装置,例如Palm OS的设备。MIDP即是使用无线Java应用程序。
■pdaprofile ( pdap )是用来实现cldc配置,并包含个人数字助理类所需要的先进的资源。相对于MIDP的移动设备(如手机),这些先进的功能包括更好的显示和较大的内存,比类似的资源。
■Personal profile是用来供CDC的配置和foundation profile(基础配置文件),并含有实现一项复杂的用户界面类。Personal profile提供的核心类,及personal提供一种类,用以实施一个先进的用户界面,也就是说一个用户界面,是能够显示多个窗口的。
■personal basis profile是和personal profile类似的,因为它是用来为CDC配置的。然而,personal basis profile提供类所实施的一个简单的用户界面,这是在一段时间内用户接口所在地能够显示的一个窗口,。
■RMI profile是用来与CDC的配置和basis profile提供以类为核心的包括foundation personal profile远程方法调用类。
随着小型计算设备的继续发展,有可能会出现更多的文件。业集团是Java Community Process计划( java.sun.com / aboutjava / communityprocess )定义的配置文件。该集团各组确立了标准配置文件所使用的小型计算设备制造行业的标准。
acdc的personal profile是指通过扩大后的核心Java类中发现的专门针对一类的小型计算设备basis profile与类。这些装置的具体类,装载于一个新的配置文件中,使开发人员能够利用这些设备开发一些应用程序。但是,如果foundation profile 是特定CDC的,而不是所有的配置文件的,是在foundation personal profile是扩大后的核心类。请记住,应用程序可以访问的一小型电脑设备的软件和硬体功能,只有当必要的类,这样做是载于JVM和在配置文件所用的开发的需要。
8.J2ME和无线设备
随着手机等无线设备的大量出现和功能的逐渐完善,对运行在这样的设备上的软件的要求量也越来越大。消费者和企业都要扩大移动通信设备的功能,使其从传统的语音通信过渡到类似于笔记本电脑和个人电脑的功能,使他们可以传送和接收电子邮件,存储和检索的个人资料,执行精密的计算和玩游戏。
开发商,移动通信设备制造商,和移动网络供应商现正急欲填补这方面的需求,但是有一个严重的障碍:移动通信设备利用许多不同的应用平台和经营调整代码,为某一设备开发的代码将无法运行在另一个设备上。移动通信设备缺乏一个标准的应用平台及作业系统,这使得应用开发移动通信设备,促进经济发展有些冒险。
缺乏标准,就是没有新的计算或任何技术开发。 在传统意义上,硬件设备制造商的尝试产品遍及市场,并执行他们的自己的专有标准作为实际上的业界的标准。许多暴发户成功的情况和微软一样。其他时候,业界领袖则组成一个财团,例如Java Community Process计划,集体制定一种标准。
无线应用协议( WAP )行动网际网路论坛成为初步创建无线技术标准的产业集团。WAP 论坛创造了移动通信设备标准,被称为WAP标准。WAP标准是一个提高的HTML,XML的,和TCP / IP的一个组成部分,这个标准是由无线标记语言规范组成的,融合了HTML和XML。wmlscript 是一种剥夺式版本的JavaScript。
9.J2ME applications
J2ME的应用程序称为MIDlet,它几乎可以运行在任何实现了JVM和MIDP的移动通信设备上。这鼓励开发商投资时间和金钱在建设移动通信设备上,而不需要担心该应用是否有设备依赖的风险。不过,J2ME是不会被视为更换为WAP的规格,因为两者都是互补的技术。开发商的申请是根据客户要求的基础继续使用wml和wmlscript提出的。开发商是为更重要的客户而转向J2ME
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[146116],资料为PDF文档或Word文档,PDF文档可免费转换为Word