今天又看到编辑推荐Java程序员和.NET程序员 这个话题,有点不太理解,难道说非得争论出个所以然才可以?看了看刚写的这几篇文章,感觉Tony Qu写的这篇中国技术界怪相还是很有道理的,也非常赞同"语言只是工具、有时间多为社区做贡献"这些观点。不过自己还是有些想法,希望也是一种补充,也是一种号召,不要再为".NET平台和Java平台的优劣"这些没有意义的话题争论不休了。
-
无论是.NET还是J2EE都是为了实现业务需求而采用的具体实现,我们选择某个平台是由各种环境因素所决定的,不是我们的喜好。这些环境因素包括:客户要求(例如客户已经有了固定的数据服务器,有了某些特定的产品组件等);公司内部可重用组件库(可能公司做某项业务,一直采用某种平台,在这些平台上有了成熟稳定的框架);当前业务需求实现复杂程度和开源库的支持程度;技术开发难度(例如桌面系统、bs系统采用不同的平台技术难度是不同的);性能、易用性、可移植性等非功能性需求;公司内部开发人员水平以及数量等。
所以程序员作为业务系统的开发者一方面是根据自己的知识经验向经理提供合理的建议,二是平台决定之后,选用合适的组件、库和语言完成业务系统的开发。难道说你是java平台的坚定支持者就会因为公司采用了.net开发系统就辞职走人么?或者是因为客户指定使用.NET而公司一直采用j2EE公司就会放弃该项目呢?
-
我们不应该抱着一颗大树不放,IT的发展瞬息万变,各种技术层出不穷,多学习,多了解,扩展知识面的广度和深度才是需要我们不懈追求的。都知道达尔文的进化论:"适者生存"。那么每种技术、平台存在就有其存在价值,即使我们再去说他不好,说它差劲,但是它本身的存在就是对我们这种诋毁的最好的驳斥。了解、学习、研究,清楚某技术存在的价值,明晰它的不足,在合适的场景下能够做出合理正确的抉择,降低成本、缩短工期、提高效率、满足客户才是最重要的。
J2EE平台主要的开发语言java在bs、cs系统的开发效率上不如.net平台,开发难度也要高些,但是我们不可否认的是在相关标准的研究、开放方面却比.net平台要好很多;.NET平台的语言、类库、控件、工具等都做的很好,容易上手,易用性好,java这方面有差距,但是我们需要承认目前在大型企事业的应用系统中,java还是占据很大的优势。
我们为什么不去学学J2EE平台的相关标准呢?看看java为什么目前在大型企事业系统中占据优势?想同的,为什么不去研究研究.NET相关产品是如何提高开发效率,提高用户易用性的呢?
事实上,我们去讨论谁优谁劣真的没什么必要,那怕有一天.net或者java倒下了,我们也不能否定它曾经存在的价值,不能抹去它给IT业发展所带来的价值,何况我们也不能主导兴衰交替的过程,我们要做的仅仅是尽自己所能的去学习,去总结,汲取万物之精华为己所用,提高技术素养而IT留名。
最后用一句话来结束"朝代更替,历史皆然!"。