初学者总是容易停留在学这个语言好呢,还是学那个语言好呢,这个问题,总是权衡
各种利弊.现在各种语言五花八门,今天流行这个,明天流行这个,有的时候,晕的时
候比清醒地多.
今天和同事一起聊了聊Net和Java,目前这两种体系非常流行,在企业级的应用平台
上选择Java好的还是Net 好.Java是一种编程语言,它最大的优点是跨平台,可以运
行在目前各种流行的操作系统上.Net是一种体系,它的目的是让不同语言可以在Wi
ndows系统上交互,同时提高软件的安全性.Net和Java在编译时都会编译一种中间
代码,然后通过运行时进行执行.两者的区别很明显,Net应该是Java底层的一种
应用系统.
Windows系统的一个特点是,各种语言都是运行在各种Api之上,各种语言编写的
程序,只不过是通过不同方式组装了Api进行调用.随着软件的广泛应用,存在一
种问题,就是系统中各种服务如何交互,系统中的各种服务如何相互集成,因此
逐步出现了组件.由于组件底层的不一样,各种语言编写的组件相互调用出现了
很多的困难,调用方式复杂,Microsoft因此根据形势提出了Net框架.最近经常
看到一些安全公告,XX软件存在安全隐患,能够造成系统管理员权限泄露,或者
远程执行某种操作,这种问题的根源在于,传统开发的软件直接调用了系统核心
组建,没有进行安全检查,造成系统安全的泄露.用Net解决这个问题,也是Micr
osoft改变windows安全缺陷的一种办法,确实得说Net是一个非常有价值的方案.
上个世纪80年代,人们一直在争执,采用微内核好还是内核好,采用微内核能
够提高系统的效率,采用内核有利于系统的统一管理,目前两种方式运用于目前
比较流行的系统里,很难说哪种好.不过在给不同系统编写程序,是程序跨平台,
各种语言相互调用,现在哪种语言都显得很紧张和吃力,即使是用C++编写的程序,
在window和unix也无法跨平台,因
为他们对底层的操作存在差异,如果有一种标准体系,可以让各种语言采用标准
接口编译,那么程序就可以跨平台了,同时还可以让各种语言编写的程序相互调
用,那么这是不是一场伟大的进步.Net就是向这种方向迈进的,但是Microsoft
为了自己不可能去考虑这种情况,所以Net也只是Microsoft的产品.如果把其标
准化,成为系统的统一标准,系统生产商针对这些标准去编写系统,软件开发者
只用去编写程序就可以了,不用考虑更多的系统因素.其实这个目的也就是让Jav
a也用行在Net之上.
目前Net似乎有点迷茫,除了几家小公司在那里努力的去奋斗,它的亲身父亲也不
知道该怎么办,因为这场革命很容易牵涉到自己的利益,虽然自己提出了Net但是
Net如何发展,对于Microsoft都很难说清楚,因为公司的所有利益并非站在Net之
上,如果改变这些,这将改变公司的很多东西.Net是一个好东西,从目前我所做
的工作,我越来越喜欢Net了,他让我的集成变得更加容易简单,只是有点担忧它
的发展.如果有一家有实力的公司能够抗起Net大旗,让系统的统一标准接口成为
现实,相信这场革命将燃遍世界的每个角落.