转Java技术:了解Java,便了解了微软.NET
了解Java,便了解了微软.NETwww.javaunion.org 2001-3-12 15:39:21
人们对于美国微软在经过精心策划后于6月宣布的“Microsoft.NET”的设想是见仁见智。在传媒中“目前还很难说”的反应居多。实际上,由于具体产品开始出笼还是2~3年以后的事,现在说三道四确实为时尚早。
这里有一把可以用来快速理解Microsoft.NET的钥匙。那就是先了解Java技术。这是因为微软自己就说过,“只要知道Java就可以更快地理解Microsoft.NET”。
Microsoft.NET有几个关键点。其中最重要的一点是改革商务模型。微软公司感觉到只靠销售软件包的商务模型没有什么前途,该公司打算今后将中心转移到可以在网络上使用的“服务”型商务。
这样,首要的问题就是解决网络上用来开发并执行“服务”的平台,这就是Microsoft.NET。这一平台应该是一个继承了目前的Windows资产,同时又是一个不比与其竞争的技术(即Java技术)逊色的现代化的东西。
新的平台试图提高开发生产效率(再也不想为内存溢出错误(Memory Leak Error)而烦恼了!),并且试图使应用软件的发布更为容易(再也不想因为DLL版本不同而烦恼,希望不用重新启动电脑就能够安装应用软件)。为此,就需要将平台升级为现代化的内容。而且,Microsoft.NET的蓝图与Java十分相似。
Microsoft.NET平台将推动程序执行环境的虚拟化进程。使用编程语言编写的代码,首先转换成中间代码“IL”后,在虚拟机“Common Language Runtime”上执行。在执行时利用“JIT(Just In Time)编译器”,通过将中间代码转换为本地代码(Native Code)来提高执行速度。此外,还配备实现内存管理自动化的GC(垃圾收集器,Garbage Collector)以及验证中间代码的机制。此外还有可以在虚拟机环境中利用的共同层次程序库(Class Liblaory)“Microsoft.NET Framework”
所有这些特征与Java平台惊人地相似。均具有提高开发生产效率,容易发布软件(安装时只需单纯复制即可)等特征。这些都与Java技术一致。
当然,Java与Microsoft.NET除了相似之处还有很多不同的地方。通过这些区别,就可以发现这两个技术在今后角逐时的力学关系。以下是主要的区别。
(1)Java技术目前就可以利用。Microsoft.NET的登台还要等2~3年。
(2)Java是采用一种语言(Java语言)开发的。而Microsoft.NET则可以接受利用Visual Basic和新的语言C#,以及所有的编程语言开发软件。
补充:Jsp教程,面向对象编程