作者: 廖永康 导 读:关于JAVA的一些介绍,可以对java有一个初步的认识。 一、技术发展背景: Java起源于80年代的中末期,当时西方有一种很时髦的产品:Active TV,Java就是Sun公司为这种产品开发的一种语言,其目标是在小型嵌入式系统上运行。但是由于动态图像压缩标准MPEG却始终未能出台,因而这个时期的Java也就中途夭折了。到了1990年,Sun公司副总裁James Gosling再次提出Java的设计,其目标是希望仿效C和C++那样设计出一种更简单、更有效、更容易使用的跨多种计算机平台(硬件、操作系统等),可移植的通用语言。到了90年代中期,互联网迅速崛起,短短几年得到了巨速的发展,成千上万的计算机,其中有个人的、企业的、政府的,公司加入到了互联网上,致使互联网深入到了生活、社会、经济、政治、军事的每一个角落,因此急需开发一种跨平台软件开发工具,这给Java得到了一个极好的发展机遇,1995年Sun公司首次推出Java语言。短短的几年中Java得到了极大的发展,成立互联网开发和应用发展的一个重要工具。 二、Java的某些特点: 1.通用性:指的是跨平台、跨网络、跨语种和跨时间。 跨平台:指的是Java与计算机平台(硬件、操作系统)无关。 跨网络:指的是Java与网络平台无关,可以穿越多种常用的网络类型(平台)。它的结构确切地说是B/S模型(浏览器/服务器模型,亦称Web模型)。B/S模型是一种三层结构的模型:客户端/应用服务器(Web服务器)/数据库服务器。 跨语种:指的是Java的应用软件不存在语言本地化问题,它本身带有语言机制。它主要是通过所谓“国际语言管理”(International Language Management)模块实现的。 跨时间:技术更新和保护投资的方案、产品升级容易,只需编写一个新的模块,替换老模块即可。 2.可移植性:Java的源代码是可移植的,而且对现有的几乎所有操作系统无须修改便能运行,还具有多线程同步、与平台无关的用户接口、内置联网功能、对象会打印功能、出错处理、内存管理等功能。CPU可移植性和虚拟操作系统。 3.支持分布式环境: 1) 分布式对象支持:类似于微软的OLE(对象的链接和嵌入——Object Linking and Embedding)。支持面向对象的“继承”特性。 2) 分布式计算环境支持:通过不断扩充的Java网络类库支持分布式计算环境。Java提供一个URL(统一资源定位器)对象,用以打开并访问网上对象。其方式几乎与访问文件系统几乎完全相同。Java的客户机/服务器模式把运算从服务器分散到客户端。以提高系统执行效率,增加动态可扩充性。 4.Java虚拟机(JVM):这是一种软CPU,是Java环境最重要的组件,它是仿照一种小巧高效的CPU设计的,Java的编译器就是把Java的源代码编译成VM可执行的伪标代码,而伪目标代码转换成实际的硬件调用。 5.Java本身就是一种虚拟操作系统和圆形用户界面(GUI),它们也是可移植的。 三、Java与中间件: Java的客户端,一般都做的很“瘦”,因此必须通过中间件才能与后台数据库相连接,由中间件来完成主要的处理操作,问题是中间件在什么平台上运行,是UNIX还是NT?网络内有不同子网,子网间也有中间件连接(运行在网点上)。因此比较合适的办法是在Java上建立中间件,来解决跨平台问题。 四、Java的弱点: 1. 跨平台速度慢。因为需要处理诸如中间件JVM等以及网络网关的连接。这是以增加网络系统开销来换取跨平台的功能,为提高速度,需要Java的未用总线来支持(至少三线)。 2. 全开放性,造成易于攻击。 自身一定的抗病毒能力,但最易受ActiveX的攻击。 3. 以松散耦合构架的应用程序结构,仍然是牺牲网络系统性能(开销)来换取应用程序以整体、完整的连续性。 4. 以互联网为环境的应用程序、总体而言,安全性是值得质疑的。 5. 用Java开发的小程序性能要比大程序性能优秀得多。 |