也论.Net

最近在做项目和审查项目的过程中,听到很多对c#和.Net的不同见解,这里也来谈谈本人对.Net的看法。

.Net应该拿来做什么
首先表达一个个人观点,好刀也要看谁使,小李给我把飞刀,我也镖不死人……我认为.net绝对是windows平台上脱胎换骨般的技术,高于硬件驱动等底层的中小型任务均可行,尤其是企业级应用,很好很强大,如果不行,那是设计开发部署者水平问题,请不要怪地球没引力

.Net做过什么

以下摘自网络

Visual Studio 2005: 7.5 million lines
SQL Server 2005: 3 million lines
BizTalk Server: 2 million lines
Visual Studio Team System: 1.7 million lines
Windows Presentation Foundation: 900K lines
Windows Sharepoint Services: 750K lines
Expression Interactive Designer: 250K lines
Sharepoint Portal Server: 200K lines
Content Management Server: 100K lines


开发便捷性

用不用.Net当然是随便你,但不可否认的是.Net平台的开发便捷性,其学习平台、图形化开发软件、文档维护等等便利之处都体现了MS软件业巨人的产品品质,至少这种面向用户的思路值得每一个IT从业人员学习。

可维护性
当初java刚出来的时候有人鄙视之——巨慢无比,但时隔几年后java工程师仿佛雨后春笋,北xx鸟的广告满天飞:年薪xxxxx软件工程师包就业~,对于整个软件开放行业产业链来说,这不一定是个好消息,但我看也不是一个坏消息,至少这个现象说明了一点,它真正让人用起来了,而不是极少数人才能涉足的高科技禁区。且不论.Net和c#出现是商业竞争还是什么别的原因,在对以前各种语言、平台去其糟粕,取其精华以后,c#.net达到了一个非常棒的高度。现在,如果设计合理,编码符合规范(比如ms的规范),其代码很容易就能够由不同的程序员快速的开始维护,这是应用软件与底层软件相比最需要的特性之一。

性能
讨论一套系统的性能不能光看语言平台,其操作系统平台、可伸缩性、程序设计等等都是重要因素,那些鼓吹语言性能问题重要性的人好像并不在意一个事实,那就是绝大多数项目中的性能问题都不是语言平台造成的,而是开发人员的设计有问题。

跨平台

.Net从其设计原理上是一种跨平台的framework,但它现在将所有平台一分为二——windows和非windows,为什么不可用于windows以外的平台我想地球人都知道了,但是不是因为不能在所有平台上跑就谁都不用.net了呢?要回答这个问题,先反过来比较一下java,由于jvm的一些特性,java在windows平台上其实也就是象征性的可以跑,其最大的优势其实是强大成熟的框架、中间件、应用服务器产品、*nix平台稳定和安全性等等等等,java是被MS带着有色眼镜盯着的,谁也不应该傻到把一套大型系统用java开发而非得移植到windows平台,我想说,其实你是先选平台再选语言,而不应该是相反

开源

.Net也有自己的开源,但其开源资源确实不如java,可能MS包办的太多了,以至于很多孩子在妈妈照顾下一直张口等奶吃-_-!

 

总结

如果你的应用是在Windows平台上,那么请在鄙视.Net之前试着了解它,如果你已经在开发.Net,请热爱并发扬光大它,其实它是个有天资的孩子,它不比其他任何一种语言、一种平台差。

posted @ 2010-03-18 17:01  火星老蒋  阅读(155)  评论(0编辑  收藏  举报