为什么会有Java,为什么会有.NET

  有人说,Java是为了跨Windows和UNIX而产生的。是这样吗?

  Sun有自己的操作系统solaris,并且打的是高端市场,而Java发展早期阶段,Windows还主

要定位在中小型企业,并没有打算与Sun一争高端客户。

  而且Sun的用户大部分都是大型企业级,而Windows定位在家庭消费用户,由于Windows已经

成为桌面OS的事实标准,Sun根本无意抢夺 Windows的地盘,而且Sun有自己的操作系统,扩大自

己产品销售才是第一。

  但是UNIX一直是个混乱的世界,各种UNIX版本在并存,你为这种 UNIX开发的应用,却很难在另

一种UNIX上跑通.应用的阻塞影响了UNIX市场需求的扩大,就象没有SQL Server,没有OFFICE,没有

Windows 游戏,和Windows上的开发工具,就算你的操作系统做的再漂亮再容易我们也会扔掉

Windows.为什么?因为没用,我买回来一个大铁家伙,我什么也做不了.Sun就出于这种考虑,所以才

有VM的想法,否则谁傻了,做个又慢又麻烦的VM.所以说Java的产生,只是为了跨UNIX平台.当然能

跨 Windows,吃定Windows,那岂不是更好,呵呵呵,Sun为自己的妙招而没事偷着乐.

  那为什么会有.NET呢?可是Windows就一个呀,它也要跨平台?而且微软已经把CLI提交给标准

委员会,看来是真要跨了?真的吗?

  从外表来看,Windows确实是一个.但是从技术角度来看,Windows3,Windows95,Windows2000是

截然不同的三种架构.在中国,大家对新技术的追求比较热衷,所以说一个企业中这三种操作系统

并存互连的可能性不怎么大.但是老外是精打细算,不见兔子不撒鹰,所以你在国外企业运行很老

的系统也不要见怪.微软为了同时维护这几种操作系统也是煞费苦心,而且由于技术是各个时期形

成的,有的技术由于历史发展原因有明显的缺陷,也无能为力修改了,而且为了功能更强大,API海

洋,DLL黑洞,ACTIVEX,OLE,COM,DCOM,COM+,各种技术交叉,唉,其中苦谁了解?所以跨WINDWOS平台

是微软制造.NET的一个原因,这样给你一个抽象的统一的平台后把你摆平后,他再着手修改他的底

层,省得一天人们叫着 Windows不安全,Windows不稳定.当然从J2EE的火热场面来看,拉去了很大

一批Windows平台上的C++程序员.失去了应用开发的源头,那还有什么发展?如何拉回这批程序员

让他们继续为Windows开发当然也是.NET的原因之一,这就是为什么.NET从架构到开发语言都与

Java极其相似的原因,就是吸引你平滑的再回到微软的世界中,如果跨度大了,程序员就有了迟疑.

唉,如果没有Java,如今的C#也不会是如今这样,原本它会更好,我想ANDERS一定心中很郁闷,但是

商业是不以个人意志为转移的.而且现在已经不是桌面为王的时代了,现在是互连网的时代,Java

是第一个有强大开发WEB应用的完整体系,而当时微软的技术还是七拼八凑,只是互连网一下到来

微软刚醒过神来仓促应战的结果,当然无法与J2EE媲美.想在互连网时代也分一杯羹,必须也有一

个完整的体系,于是.NET就产生了.

  我们已经有了Web Service,我们还需要.NET吗?

  其实技术发展到如今的应用集成时代,用户的需求就是把现在各种平台上的应用集成起来.集

成的方法有很多种,当然跨平台也是一种.不过最省力的还算是WEB SERVICE.因为现在已经是组件

应用的天下.各种COM,EJB,CORBA成为快速组装企业应用的主流技术.组件是位于操作系统,数据库

,网络之上的技术,站在组件的层面上,下面用什么技术已经无所谓了,因为已经被组件屏蔽了.如

果我们能把我们的组件互连起来,不也可以集成吗?应该怎么做?这几项技术都分属于不同公司,想

联合真不大容易.这时就要找到每个体系公共的东西,用公共的东西把他们连在一起不就行了.找

呀找,终于发现,是TCP/IP.随即几大公司都发现了突破口,需要快速占领先机.由于Sun一直在Java

发展的问题上给了IBM很大的阻塞,所以IBM宁愿先和微软联合做,如果微软有什么不轨之心,就放

出Sun,让他们互相咬,然后在适当的时机出来装出老大的样子摆平他们,给他们俩制定一个适合自

己发展的竞争协议.

  我们已经可以互连了,我们干吗要.NET.我们的问题已经解决了,我干吗花钱再投资呢?经济本

来已经很不景气了.

  但是,但是,就是这该死的但是...

  微软看来已经决定不在现有基础上增强ASP和COM+了,现在是互连时代,也是组件时代,两大要

命的地方我都不升级了,你自己看着办,我可没逼着你买.

  .NET和Java在中国哪个更有前途?

  这个问题好象已经不用再争了.中国90%的用户是Windows用户,保护现有投资,使用很习惯很

易用不用重新学习,我又不用跨平台,我干吗要换Java 呢.过去是微软没有提供很强大的WEB开发

解决方案,现在提供了,我干吗要用Java.而且. Net比Java出的迟,肯定会吸收Java的优点,弥补

Java的缺点.而且微软的VM肯定和Windows结合的很好,性能不用担心.我干吗用 Java?而且微软显

然把宝已经压到了.NET上,你难道还要在.NET的VM上再加一层Java的VM?

  .NET有什么新的亮点?

  当然是ASP,ADO和COM+,还有清晰的架构,并且由于统一的类库,我们为WEB,GUI,MOBILE而开发

的应用会很容易的转来转去,不象过去开发,各需要学习不同的知识.ASP终于结束了网页意大利面

条式的程序,面向对象和支持多种语言,使构筑强大复杂的WEB应用提供了比JSP更凶猛的功能,让

人不得不爱.ADO.NET也抛弃了过去的数据集一Scroll就连数据库进行提交的糟糕速度,代而取之

的是多条修改可以一次性提交上去.这样性能会提高很多.COM+呢?COM+1.5的特性大家在WINXP上

也看见了,比1.0强了很多,未来还不用注册, COPY完就能用,多舒服.至于安全嘛,稳定嘛,这话不

敢讲.因为盗亦有道,Java也同样如此,无法说谁比谁好.

  .NET真的会跨平台吗?

  微软的命根子是操作系统,微软此次出.NET也是为了打入高端市场.怎么打入?微软第一已经

在用C#收买 Java程序员了,并且做Java和C#的映射工具,先断了Java应用的前途,后面用CLI提交

给标准委员会,让别人开发UNIX上的平台,微软不在正面和UNIX阵营冲突,以免犯众怒.当UNIX和

Windows的CLI都有了时候,基于CLI的应用可就两个系统都能用了,这会帮助微软销售多少其他产

品呀.这不,微软在支持着好几个Open Source社团在开发UNIX的CLI.跨平台的事微软不会轻易干

的,否则微软的命根子怎么办?

  .NET真的支持多种语言吗?

  开发更多的基于.NET的应用,让.NET快速成长起来.第二.NET是一次比较大的革新,广大的各

类程序员能否跟的上也是个问题.多语言的支持当然会,但是不会支持的很好,否则微软大力做C#

干吗呀,如果别的语言和C#一样好,那微软还混什么混呀.最糟糕了,也要其他语言的技术比C#慢半

拍.不过先走也未必领先,就象DELPHI就后来居上,这么大的市场,微软是不可能通吃的.

  我们需要转到.NET上吗?

  你可以不转.就看你需要不需要INTERNET了.我想在未来,没有企业会说INTERNET对我没有一

点作用.

  现有应用能否平滑过渡呢?

  在这个问题上可以看一下微软的历史.微软在做完WINNT4的时候其实已经在策划现在的

WIN2000,但是为什么在WIN95后有WIN98, WINME,WINXP,不是他当时做不了那样的技术,而是必须

引导着客户一步步走,要追随客户,走的太快,就会丢失客户.在这个重大的转折点,微软也会如此.

而且在现在的Windows.NET上,你运行现在的程序一样没问题,速度依旧,操作方式也依旧,因为他

使用了两种手段来区别对待这两种应用程序.

  什么时候转?

  如果你需要抢占市场先机,现在转正好,因为能支持ASP.NET,ADO.NET开发的VSS.NET已经推出

快一年了,就是有能力欠缺的问题,第二版的出来也不会太晚了.不过话在前头,确实在实际的开发

中,Vss.NET确实有些做不了的事情,不要看他好象什么都有,这就跟微软当年宣布COM有池化的功

能一样,仅有一个外壳.这是微软的策略,跟不跟着走,你自己看.稳健型的公司建议在第二版出来

后应用,因为微软的产品一向在第三版才会好用.

  作为开发商,跟随.NET的难点是什么?

  难点难就在,过去我们的开发方式,拖一些控件,连个数据库,更新或SELECT一些数据.再深一

些就是消息,或者是一些不常用的API.记住:.NET是微软进攻高端市场的第一步,现在的微软不是

我们过去熟悉的微软,Vss.NET的一推出,就是强烈给人一种这样的感受:从建模到开发到测试到发

布,全套企业级的工具都无缝相接,而且处处体现着OO和设计模式,在宣传中也频繁提到,昭示着这

个工具是为大型应用开发而定制的.所以宝刀也需有能力的人才能拿的动,否则只能砸了自己的脚

.对于现在的Java开发工具也是如此,好象全世界一下都没有了小型企业一样.我们是否具备了优

秀的设计师,建模师,OOP的程序员,我们是否有一整套流畅的开发流程来支持全程建模,我们都需

要深思.在微软的.NET的各种培训上,培训师也是反复强调分析设计,大型项目管理,自动化工具的

支持,你做好准备了吗?

  题外话:

  Sun在微软拆分问题上输了吗?

  微软的案子打了这么多年,居然庭外和解.Sun确实挺郁闷.不过Sun并没有输.为什么这么说呢

?依毛主席的话说就是:敌进我退,敌疲我扰.确实微软在. NET的发展上受了很多牵绊,否则也不会

到如今才推出来个框架.在硅谷,时间就是机会,时间就是金钱,谁前进的快谁就能占先机,显然Sun

并不是最痛苦的一个.

  Java的未来

  依Windows的用户量和微软进攻高端企业应用的决只是呆板的图形,不能全方位的表现网络的

传输技术,使应用进步更加依赖硬件而不是软件,微软亚洲研究院为什么在做哪些研究,就是因为

他们不断在思考未来是什么,所以每一次技术的浪潮他们总在浪头.当然未来还会有所改变,但是

他们会及时调整他们的战略,但大方向不会错到哪去!

  当技术不再是阻碍应用发展的主要因素,比如宽带的来临,这时候你想过没有,在它上面,该做

些什么呢?

  世界有多大,你能看多远?为什么在每次浪潮到来时你都无法预想到,而感叹这世界变化如此

之快?

  我对微软的发展的一些看法:

  微软把.NET扩展到高端市场和移动设备市场,为.NET开发的程序可以在基于.NET的任何设备

上都可以运行,大家不需要为不同的设备用不同的工具开发应用,应用极大的推动了基础软件的扩

大,就象OFFICE,SQL Server辅助扩大了Windows的销售一样.

  未来的XBOX也会变成.NET平台,成为家庭连网的安全网关和交易网关和信息网关,如果你觉得

微软进入游戏业就是为了眼馋游戏这块利润,那你就大错特错了,这个皮毛根本不值得微软大动这

么财力.

  PDA 和手机也和机顶盒一样嵌入.NET,你打开电视,你打电话,你玩游戏,你工作,你上网,你甚

至打开冰箱,你都不会知道在背后支撑的是.NET,从高端服务器到你的手机,全部是微软的软件这

是一个伟大的设想,如果微软能够兢兢业业的走,凭这样的财力人力和管理和经营战略,走10年,实

现的可能性非常大,这不是以个人意志为转移的,你说他倒他就会倒吗?

  如果会成功,当然微软会成为人类历史上最伟大的公司,赚取的财富已经不能再提,最关键的

问题是:我们全人类的生活和工作被一个私人的商业公司所控制着.

  只是到那个恐怖的地步,你是否有勇气和能力把他拆分.因为他足以触及到你的生活和工作,

社会的经济,政治活动,甚至军事,任何的动作都足以引起社会的大地震.

  你认为他有什么理由完不成这些梦想吗?

     以上都是转别人的文章,主要分析下现在JAVA 和.NET的情况,未来到底谁会是主宰.我个人觉得.NET基于WINDOS操作系统,就可以说是靠着微软在呢,微软不到,必定.NET会变成主导,毕竟微软的实力可是世界第1啊,他既然在JAVA后推出.NET一定有他的战略,有照一日,必定能成为主流,在中国基本都是WINDOWS操作系统,这个是没有办法的,谁也不会去说要换个其他什么操作系统,不太可能,也不太会,所以有微软主导的一天就有.NET的光明前景.


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/loginnamemjf105/archive/2009/10/17/4687321.aspx

posted on 2009-11-01 00:46  彪悍的小黑  阅读(192)  评论(0编辑  收藏  举报