.NET断想

原创 2004年02月18日 23:36:00

.NET断想

荣耀  2002

“遗留软件”和“遗留程序员”是阻碍.NET普及的最大阻力。另外一个阻力(听起来有点庸俗:))是目前的Windows操作系统没有预装.NET框架。运行.NET应用,你需要另外安装.NET框架,这多少都有点麻烦。COM为何会在极短的时间内迅速取得成功,Windows内建了COM基础设施不能不说是原因之一。

微软当然比谁都清楚这一点,所以,“Windows .NET”系列操作系统,必然指日可待。

假如你对此观点不以为然,不妨看看CORBA在Windows平台上命运。当然了,这只是原因之一,而且,我说过,这个原因有点俗:)

不过在此也要纠正一个谬误。不在少数的程序员以为,在访问以ASP.NET技术创建的Web网页(.aspx)的客户端机器上,也必须安装.NET框架,这个概念是错误的。道理其实很简单 服务端总是返回生成的HTML。

无论微软如何宣称,无论.NET如何支持多种语言,都不会影响“C#是.NET最佳语言拍档”。

但在相当长的一段时间内,Visual Basic .NET或许反而会比C#占有更多的用户。原因并不复杂 — 现有的Visual Basic程序员为数众多 — 尽管今天的Visual Basic .NET早已不是从前的Visual Basic了。

Visual Basic程序员过渡到Visual Basic .NET,可能要比C++或Java程序员过渡到C#困难得多。

.NET框架由通用语言运行时(Common Language Runtime,CLR)和.NET框架类库构成。.NET在操作系统之上又加了一层抽象,.NET本身并不是操作系统。

为什么有那么多的人憎恶微软?这很让人费解。无论哪家公司,倘能取得微软这样的成就,都是了不起的。无论谁坐到了微软的位置上,估计都会这样。

憎恶微软的人,要么是微软的竞争对手,要么是非微软阵营的狭隘的开发人员,要么啥也不是,纯粹人云亦云,瞎起哄。

无论你多么憎恶微软,无论你怎样不喜欢.NET,假如你是一名“面向微软”的开发人员,学习掌握.NET只是早晚的事。

假如你是一名Windows开发人员,纵然你从来都不打算使用.NET技术进行实际软件开发工作,想对.NET完全免疫也是不可能的,你至少得知道它究竟是怎么一回事儿。

今后若干年内,.NET和Java将会形成分庭抗礼之势。两大阵营各有支持力量,只有在竞争中彼此学习互补,才能共同前进。任何一方都很难一口吃掉对方。

在软件开发世界,单极世界难免霸道,绝对不会长久;两极世界的平衡很难长时间维持,容易被打破;多极世界是丰富多彩了,但无疑将会成为开发人员的灾难,因为异质技术的整合,从来都是一场噩梦。

Java已经占据了大片地盘,在微软支持下,.NET将会最大限度地把pre.NET开发人员拉向自己的怀抱。在这个过程中,或许有人逃到Java阵营,但人数不会太多。道理很简单,假如你是一名微软技术开发人员,学习.NET所要花费的功夫,无论如何都不应该超过学习Java所要花费的功夫。

在从微软pre.NET技术过渡到.NET过程中,肯定会淘汰掉一些无法与时俱进的开发人员,这是正常现象。在技术进步的过程中,每一次创新,抱残守缺者总是会被毫不留情地抛弃。

自然选择,物竞天择。

有多少人会使用Managed C++?数目应该不会太乐观。相当一部分C++程序员往往会有某种没来由的优越感,对任何非C++的东西不屑一顾,大有万般皆下品,唯有C++高的感觉。在这些C++程序员的眼里,Managed C++已经算不上C++了,或者说,充其量,Managed Extensions for C++不过是微软对C++打的一个.NET补丁而已。

每一个严格符合.NET框架的语言的程序,最终都将被转换为MSIL代码(当然啦,有些语言只是提供了同CLR-based代码交互的能力,并不真的生成MSIL),但这并不意味着使用不同的.NET语言编写的功能相同的代码,将会转换成同样的MSIL代码。编译器的质量会有差别,生成的MSIL代码的质量也肯定会存在差异。

非微软的.NET语言据说已有两打之多,但它们很难成为主流。某些第三方.NET语言的现实意义,不过是提供了一种将现有代码移植到.NET之上的途径而已,另外一些仅仅具有学术研究方面的价值。

我不知道究竟会有多少人在.NET上使用Perl或者Python,尽管今天它们的拥趸的确不在少数。我只能肯定Delphi(Object Pascal)应该是个例外。

能否成为主流.NET语言,主要取决于:是否有足够多的“遗留软件”,是否有足够多的“遗留程序员”,是否有足够好的IDE,是否有实力足够雄厚的组织提供强力支持。

向来只有微软自己的技术才能和微软的技术最佳匹配,COM就是一个例子。COM无疑是pre.NET时代最成功的跨语言机制,但这种技术在跨微软自己的语言(确切地说,是开发环境),比如从Visual C++跨到Visual Basic以及相反时,表现还好,跨到了别的语言(开发环境),比如说Delphi,就会暴露出这样或那样的问题。

但愿类似的情况不会发生在.NET身上,但愿遵循CLS的语言果真可以完美无缝地互操作,就象微软自家生养的.NET语言一样:)

Web Services技术并非微软独创,也不是由.NET带来的,但仍然有相当一部分人误以为它是伴随微软.NET而来的技术。微软推广技术(概念)的功夫,由此可见一斑。

别误会,.NET Compact和.NET框架可以说是很不一样的东西。.NET Compact并不是从.NET框架中简单地砍掉一些东西之后的精简版,否则.NET Compact也不会比.NET框架晚交货那么长时间。

ASP.NET应用程序,就是.NET应用程序。普通ASP开发人员过渡到ASP.NET的痛苦,比起从Visual Basic过渡到Visual Basic .NET所要承受的痛苦(快乐?),不会少到哪里去。

ADO.NET是一种革命性的技术,尽管无可否认,它从Borland借鉴了许多数据存取技术,但ADO.NET对XML技术的支持,目前无疑处于领先地位。

我希望速度不要成为Web Services被广泛应用的阻力。在荣耀编写的一个测试应用中,整合来自不同厂商的Web Services的应用效果是令人惊讶的,不过,这个应用速度之慢,同样出人意料。

或许基于Web(WAN)的分布式计算,迫使我们不得不作出速度上的妥协,就象我们可以容忍(并且已经习惯)浏览器应用比传统Windows GUI应用来得慢一样。

.NET框架应用或许会比那些Windows DNA应用运行得慢,不过,我们真正应该关心的问题并非是这些应用到底能运行多快,而是它们是否足够快,快到可以满足用户业务处理的要求。

Java的成功已经提供了这些证据。尽管Java代码一般来说要比本地代码来得慢,但它还是足够快了,许多组织都非常成功地使用了这种技术。因此,对于.NET速度上的担心,完全是多余。按照微软自己的说法以及第三方提供的一些测试数据,.NET至少比目前版本的Java来的更有效率。

毕竟,硬件的品质也在不断提升。

.NET断想

 “遗留软件”和“遗留程序员”是阻碍.NET普及的最大阻力。另外一个阻力(听起来有点庸俗:))是目前的Windows操作系统没有预装.NET框架。运行.NET应用,你需要另外安装.NET框架,这多少都...
  • yichangxin
  • yichangxin
  • 2006年08月07日 23:24
  • 629

断想

断想 没有到不了的明天,相信一切都会像我们所想的那样越来越好。。。 好像已经失去了可以后退的路,心中一直坚定着一个信念,只许成功,不需失败,因为,没有其他的路可以走 终于感受到一个人在外面流离是一...
  • yaqa7wfqdnll
  • yaqa7wfqdnll
  • 2012年08月30日 10:55
  • 95

风车断想

  走在大街上,看到有年轻的爸爸牵着孩子,孩子的手里举着迎风旋转的风车。那风车做工细致,圆轮规规矩矩,十分可爱。不禁想起,前几年自己的孩子也是这么小的时候,我们也给她买过这样的风车。她起初也是爱不释手...
  • liukunyun
  • liukunyun
  • 2010年06月01日 22:56
  • 223

手机开发断想

最近新买了一部Nokia的E52手机,过去并未接触过Symbian的操作系统,这次因手机的缘故,特意到几大论坛转了转,这一转,才真正晓得原来在S60的开发区里面是如此的热闹,于是就有一些有关软件开发的...
  • bnpysse
  • bnpysse
  • 2010年09月14日 09:05
  • 131

Delphi断想

Delphi断想 荣耀  2002秋Delphi是迄今为止口碑最好的RAD(Rapid Application Development)产品。Delphi 3.0是Delphi系列中划时代的版本,成熟...
  • cwxiao888
  • cwxiao888
  • 2004年02月18日 23:36
  • 837

web断想

回首2006,来自互联网的惊涛骇浪,仍然历历在目.从blog的娱乐化,到网络暴力。从芙蓉姐姐,到伊拉克战争……互联网正越来越多地发挥着作用,影响着我们的生活。网民关心的是互联网能给我们带来什么。而不是...
  • ycy303
  • ycy303
  • 2007年01月04日 00:22
  • 369

经济学的断想

在目前众所周知的国际环境下,最近又见郎咸平教授高论。如果我没有理解错误的话,作为一位研究经济学多年的学者他甚至认为:离开”金融工作者“这个世界完全可以运行,但离开工程师却难以为继。令人无限感慨,或许也...
  • quanben
  • quanben
  • 2008年06月17日 21:31
  • 550

反物质之谜断想

反物质之谜断想 自然界纷呈多样的宏观物体还原到微观本源,它们都是由质子、中子和电子所组成的。这些粒子因而被称为基本粒子,意指它们是构造世上万物的基本砖块,事实上基本粒子世界并没有...
  • chs_jdmdr
  • chs_jdmdr
  • 2012年09月22日 00:09
  • 700

MapInfo professional v8 断想

  mapinfo今年主打mapxtreme2004这张王牌。另外,也发布了几个产品的新版本,比如LBS/LBI产品Envisa和Exponare,MapXtreme4Java4.7.1以及profe...
  • stonewill
  • stonewill
  • 2005年01月14日 18:53
  • 519

Delphi 2006 断想

        CSDN 放出了Delphi2006 的消息,有位兄弟写了篇相关的文章《BDS 2006中ECO III的新功能StateChart功能展示 with ECO ASP .Net 》。以...
  • moeryang
  • moeryang
  • 2005年12月08日 21:56
  • 1397
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:.NET断想
举报原因:
原因补充:

(最多只允许输入30个字)