#12001/3/5 15:36:30
.Net印象
by pinxue &. pigprince 2001-2-18 0:04:42
作者:重离子
只能用两个字形容:恐怖!
什么是.Net呢,核心上就是一大套构件库,这套库既象VCL又象JAVA Class也象COM,简直是象雾象雨又象风,包罗万象,可以找到市场上任何流行构件/类库的影子。
所以说,在Windows开发工具市场上,.Net一出,谁与争锋!
不是VC或C#或IDE咋样牛,厉害的是构件库,以前得从各家的开发工具里找,现在它已经成为操作系统的一部份,而且是语言无关的,提供了开发所需要的所有功能,且具有良好扩展能力,因此,开发工具再也不能通过构件体系结构获得竞争优势了。
Java作为一种平台无关语言,配合上庞大的类库,是目前看来唯一可以与.Net争锋的东西。但是,Java目前主要面向服务器端应用和企业级的应用,而这些领域并没有多少人家使用Windows平台;而广泛使用Windows平台的中低端应用上,JAVA的应用则使用得不很广泛。Java这样一个完全面象对象的语言,通过小粒度划分对象、JNDI/RMI等集成在语言内的服务、J2EE体系特别适合描述Bussiness Object和Bussiness Rule。而且由于JAVA的平台无关性,使用得它较少受硬件平台和操作系统供应商的制约,即使MS不在Windows平台中提供JAVA虚拟机,对它也不构成太大影响,因为Sun等也可以提供。简而言之,现在一说到Java,并不是指那种语言,而是整个Java体系,一个被实现了的立即可用的优美的完备的企业级架构。
然而,.Net通过提供一大套控件库,实现一种语言无关的架构,集成了GUI/DCOM/COM+/ActiveDirectory……,包罗万象,而且和Windows操作系统紧密结合。简而言之,.Net有三个优势:语言无关,与操作系统紧密结合,体系完备,易于使用。在COM/DCOM时代,语言无关、与操作系统紧密结合都已具备,但是只能提供一些零散的孤立的服务,没有完备的体系。而且COM/DCOM的使用极其复杂,感觉就象摸到了粘着苍蝇的粘蝇纸,这显然也阻碍了COM/DCOM的流行。而目前业界最为完备强大规范的体系是Corba,可惜并没有人完全实现了该体系,而Java体系几乎与CORBA一样完备而规范,并且众多厂商实现,目前被广泛应用于中高端解决方案。如今,MS在dde->ole->ole2->com->dcom->com+的努力终于达到了.Net的境界,充分整合了竞争对手优点的体系架构,足以与Java体系抗衡。由于Windows与.Net平台紧密结合,在windows世界中Java与.Net竞争没有优势,在windows桌面应用市场,Java完全无法与.Net竞争,而Java和.Net/Windows将会中低端应用市场有一场恶战。
Delphi之所以有今天的成就,是源于其便利的对象模型,清晰、易用的VCL构件库、高度可扩展的插件体系结构,以及大量的第三方控件。Delphi主要应用在快速原型开发、桌面应用,也大量用于中低端企业应用的开发。相对于主要竞争对手VB而言,真正的面向对象编程语言objectpacal、本地编译使它成为名符其实的RAD开发工具,被称为VB Killer。由于在Delphi的对象模型及VCL架构设计时充分考虑了对COM的融合,使得Delphi能够以与使用VCL对象一致的方式使用COM对象,从本质来讲VCL对象就是COM对象(细节可参考DELPHI对象模型)。相对于SDK式的COM开发,Delphi具有巨大的优势,相对VB它能充分利用COM的全部能力,因此COM的强大与复杂进一步增加了Delphi的竞争力。
.Net融合了VCL的优点,在发展COM及融合原来分散的各服务的同时,提供了清晰易用的构件库,该构件库具有与VCL相若的插件式结构和第三方扩展能力。并且提供既象JAVA又象objectpascal又象c++的C#开发语言及配套开发环境,就我们看来C#及其IDE已经完全具备取代Delphi当前版本所需的特性。
我们认为,.Net作为微软目前的核心战略,其意义并非只限于技术范畴。微软面临拆分的结局,而.Net就是应对之策,它将担负起用技术形式将拆分后的若干小MS捆绑成一个整体的重任。无论是应用软件还是开发工具,都将基于.Net体系实现,通过.Net与操作系统的紧密结合就把应用软件和开发工具的核心与操作系统捆绑在一起了。这样每一个领域里的竞争对手将要面对的并不是一个小微软,而是若干小微软组成的特混舰队。.Net的核心竞争力就是与操作系统的紧密结合,而.Net战略的主要目标就是把微软的核心竞争力由操作系统转移到.Net上,这也就意味着.Net完全可能被移植到其它操作系统上,通过这种方式,微软的软件可以覆盖到软件业的所有方向,从这里就可以看出微软的一统江湖之意,而.Net就是葵花宝典!
目前微软的核心竞争力是操作系统,与微软的竞争实质就是操作系统的竞争,大量应用软件领域的竞争结果已经证明这一点。想要抗衡微软,就要从操作系统上下手。这也是当前业界巨头公司大力支持Linux操作系统的根本原因。Linux操作系统抛开其开放源代码和自由软件的特性不谈,它也是一个伟大的操作系统产品,它既继承了Unix的强大与稳定,又具备了与微软Windows产品线一样全面的产品线,在Server端极具优势。从目前来看,Linux的弱点就是在桌面应用上,应用软件还不够丰富,特别是缺少象MS Office、Lotus Notes、Micramedia Authorware/Director/Dreamweaver这样广受欢迎的用户必不可少的桌面应用软件。我们认为部份原因是因为缺少象VB、Delphi这样强劲易用的快速开发环境。但是,现在有了Kylix。
Kylix继承了Borland公司在Windows平台的Delphi开发工具的成功经验,通过设计一个新的构件体系-CLX-实现了一定平台无关性,同时CLX的体系结构与VCL基本一致,在应用层面上基本无差别,也就是说Delphi的Windows平台将可以平滑的移植到Linux平台上,这意味着,在Windows世界的桌面应用程序可以很快到在Linux桌面上出现。集成CLX的Delphi 6推出后,将可能一次开发出可同时在Windows和Linux平台上编译运行的应用软件。CLX另一个重要的优势在于现有的delphi/windows程序员的经验可以应用在kylix/linux开发上,这将大大促进Linux上中低端应用软件的发展。Kylix并不仅仅是一个良好的GUI快速开发工具,它同时为Linux带来了开发企业级应用所必需的体系架构和完整解决方案,如数据库引擎、MIDAS、CORBA、XML等,还可以和borland的相关产品集成提供企业级应用支持,如与Interbase、VisiBroker、AppServer集成。我们认为,在Kylix推出半年后,它将是Linux市场的主流开发工具,并带来Linux应用的又一次高潮。
显然,Linux桌面缺少应用软件的另一个重要的原因是由于大部份Linux用户是来源于unix世界,他们习惯使用命令行程序,这使得桌面系统的开发进展缓慢,直到最近较多的受到关注(如gnome)。我们认为随着Linux桌面系统的发展,其易用性的提高,将会有越来越多的用户能够接受Linux做为桌面操作系统;而目前已经有组织在研发AbiWord、OpenOffice等常用软件,这些软件的功能已经相当完备,并且发展势头良好;并且Kylix将会大大促进Linux桌面应用的研发,这就构成了一个良性循环。因此,我们认为由于用户需求及相应市场潜力匮乏给Linux桌面应用发展带来的阻碍将很快消失。
从目前来看,唯一能够和微软产品线抗衡的就是Linux产品线,唯一能和微软.Net抗衡的体系架构是Java。Linux产品线(含Java)是无所不包的,该产品线从操作系统、桌面、中低端到高端应用都具备良好支持。微软在与Linux竞争是会发现找不着具体的竞争对手,会发现它的竞争对手本质上是它的用户。而且自由软件策略会带给Linux特殊的竞争优势,如果当年OS/2是自由软件的话它应已成为主流。
综上,我们认为:.Net将是微软核心竞争力,Linux将是其主要竞争者。
作者:【重粒子】