David Kaminsky
Java的applet-on-demand 能力使用户在线的感受起了革命性的变化并改变了“个人计算”的内涵,对于Internet和intranet客户的软件结构的影响又将是什么呢?
随着我们进入到一个以网络为核心的世界,“个人”计算机的概念将越来越被淡化。既然所有的程序和数据都保存在服务器上,从哪台计算机访问它们便不再那么重要。你也不会再放弃你个性化的东西:当你将验证卡插入一网络计算机或登录到你的PC上时,你自己的设置便会恢复。这样的世界将怎样到来呢?
Java的标准化
为什么是Java?Java引入了一种大胆的新的动态机制。这种动态机制指的是在认为一种行为必要之前将阻止其执行并在确认之后自动执行的的能力。 -- 你的角色是感爱好的旁观者,而非不情愿且痛苦的参与者。如你所看到的,正是这些兴致带来了一个以网络为核心的世界。
Java的动态下载能力是Java动态机制中最明显的部分。最开始,程序保存在服务器上,当需要时自动地下载到你的机器上。这意味这你得到的总是应用程序的最新版本,而且不必陷入自己安装应用程序的麻烦之中。这个能力最先被用在Web的 "applets"上。
Java的动态机制不止与此。Java重新定义了程序的概对于传统的编程语言,一个程序员编写代码并将其保存在一个源程序文件中,将它编译成“对象”模型,然后通过链接使之成为一个真正的程序。即使程序员只对其中的一个模型进行了改动,他也必须重新对整个应用程序进行链接,然后分发给所有的用户。
Java程序员还是要编写代码然后编译为Java的 "class" (对象)文件,但链接直到程序运行时才进行。当你执行应用程序时,Java系统从本地硬盘或通过网络调入需要的类文件。假如你不执行一个应用程序的一些不清楚的部分,那部分的代码将不会下载到你的系统中。
对于你,程序只是你用的,而不是程序员认为你可能用的。这将大大节省下载的时间。更好的是,这意味着当你执行一个应用程序时,程序的每个构件都是最新的版本。由于应用程序未经过链接,且只有当需要时模块才被下载,你不必担心你用的是否是该应用程序的最新版本。
由于其面向对象的特性,Java的动态下载能力还意味这你不必担心你是否有访问最新数据的程序。当新的数据放到网上,相关的Java代码也被编写好了。这些代码直到该到哪去找寻数据和怎样与之进行交互。若信息改变了位置或其格式发生了变化,Java代码也会被更新的。
而且, Java解决了动态集程不同来来源的数据的问题,并保持了用户经验的一致性。 JavaBeans定义了对象交互的结构。利用JavaBeans,独立定义的对象可以交换信息并保持一个一致的界面。
这对那些有不同的后端服务器(交易、数据库和Web...)的公司来说尤为重要。程序员不必编写一系列置于服务器上的独立的应用程序,而是线编写能与不同的服务器进行交互的可复用的Bean,然后用这些Bean快速的架构起应用程序。利用可复用的Bean可使公司的开发成本大大降低。
这便是一切:通过动态机制,Java超越了许多障碍而是以网络为中心的计算更有效率。当然,我们略过了一些模糊的细节,如缓存连续和代码签名。既然会有解决这些问题的技术,在解决方案应用于Java之前,那只是个时间问题 ---而且不会很长。
--------------------------------------------------------------------------------
Translated and reprodUCed with permission of IBM. IBM does not warrant the accuracyaof the translation or the technical accuracy of the original document.
本译文经IBM答应,IBM不能保证译文的准确性和技术的准确性。