Quitgame在自由互联发表了一篇《Java 程序员 和 .NET 程序员》后,一石激起千层浪,遭到了很多自由互联网友的拍砖。
说实话,在自由互联发表这种文章,跟在JavaEye或其他Java开源社区发表Java不如.Net的文章结果是一样的:会遭到很多.Net或Java粉丝的攻击。
Quitgame其实说的不无道理,但有点以偏概全,并非所有的.Net程序都是所说的那样在一个傻瓜式的开发平台上进行傻瓜似的编程。
针对Quitgame的观点,我提出几个自己对Java 程序员 和 .NET 程序员的看法。
1:并不是说Java程序员就很懂Javascript而.Net程序员就会把大量界面上的微小变化交给 UpdatePanel 来处理。我见过的很多.Net程序员,Javascript也NB的要死,Web开发者,有多少人不会Javascript,你所说的这种情况更多的是指初学.Net的人。会Javascript跟你学Java,.Net,PHP是没有很大直接关系的。
2:系统出错的时候,Java 程序员会看服务器日志,.NET 程序员会希望看到黄色的出错界面,对于这种观点,我只能说.NET的IDE功能太强大了。
3:做.Net Web开发,并不是想像中的那样拖拉控件那么简单,想深入并精通.Net还是相当有难度的。真正优秀的.Net程序员,会弄懂CLR的原理,如何进行控件开发,如何搭建 .Net框架,如何封装组件提高开发效率的。
4.Java开源社区很活跃,.Net世界比较封闭,这是不争的事实。Java话说是全世界在搞,而.Net是微软一家公司在弄,但有个事实是,sun公司被Oraclc收购了,Oracle,IBM等几家大公司经常为Java 的专利打官司,弄得Java世界鸡犬不宁。我的观点是:Java开源社区是很活跃,但标准有时难统一,微软一家搞.Net,确实太封闭,但这个可能跟微软的战略有关。
5.其实,学Java 与学.Net并不矛盾,并不冲突,搞Java的人也可以学习.Net,学.Net 的人也可以学习一下Java,比如借鉴Java的SSH还有设计模式。一名优秀的程序员,单单学一门语言我觉得是不够的。我的项目经理与部门经理主要都是搞.Net 开发,但他们每周都会学习一下Java,把Java 的优点借鉴到.Net平台上,作为.Net程序员,他们对Java的熟悉程序是:只要是.Net能实现的功能,用Java他们几乎都实现,所以我觉得作为Web开发人员,.Net与Java都应该学习并掌握。
6.对于加班,跟哪种语言的程序员是无关的。项目又多又紧,开发效率再高都要加班。
没有程序员是不用加班的。
7.应该正视.Net的不足之处,不要每次说到.Net痛处的时候就人身攻击,呵呵。我特别是希望.Net的是能像外国开源社区那样,任大家批评报怨语言的不足,然后听取意见去改进。我觉得作为.Net程序员,更重要的事情是怎样利用这个平台,用恰当的解决方案,巧妙的编程思路,优美的编码规范,去创造对公司和对客户都有价值的东西。