已经很久没有像样的BLOB了,今天看了公司BOSS关于.Net和Java的技术比较文章,来了感觉,似乎可以废话几句了。
首先,明确身份,我是一个绝对的Java拥护者,但是,这不代表我认为.Net是垃圾。
首先需要说明的是,关于.Net和Java之间的比较的言论已经太多太多,他们之间谁好谁坏的已经变成了漫无边际的口水的海洋,对这个海洋中再注入些什么我已经毫无兴趣了。所以,我还是想说说我自己的感受为主。
首先,我有一个概念,在这两者之间,占据重要地位的不是技术,而是商业(无疑,我相信这句话本身就足够引来无数口水)。但是我们不妨看一下在这两个阵营之中,出现了多少存崔就是商业感念的玩意,为了防止口水,我还是不列举的好。
好了,现在觉得开始说技术方面了。.Net的优点在于…………容易上手,这种特性对于中国来说实在太重要也太有作用了…………(此处省略XXX字)。
而Java则侧重于对设计模式的研究,对优秀系统架构的追求。无疑,这是软件开发人员永远的追求,不过,这是高手们干的活,有能力的开发人员可以跟着这些高手们前进,对于初学者~~~这门槛实在太高了。当你企图对一个没有开发经验的人讲述IOC和ORM的优点的时候,将深刻的体会到这种门槛的存在。对应的Asp.Net的框架虽然从设计模式上多少有点丑陋(注意,拍砖的表打脸),但是其容易上手的特性无疑吸引了初学者。
不得不再次指出的是在IDE上似乎也显示出这种特性,我曾经表示过,VS和Java的主流IDE来比较,除了集成性之外几乎一无是处。Java的IDE中可以说拥有了太多令人兴奋的特性,有Eclipse几乎变态的可扩展性,有IDEA那对语法检查无比强大的支持和极高可用性等等。这些似乎都是VS中的缺乏的,然而VS那安装后就可以使用的特性似乎也是JavaIDE所欠缺的。这点可以在MyElipse的受欢迎程度上可见一斑,似乎有太多的人已经厌倦了Eclipse中的插件安装,版本调整等等一切问题………………当然,我绝对相信花这些功夫绝对不是浪费时间。
接下来的问题可以说是Java世界中非常重要的了……那就是开源社区。这点不得不说是Java世界中的巨大资源,无数个开源项目让Java充满了光彩,而.Net社区中大量收费的模块不得不让我作呕。事实上,如果你决定做一个.Net的开源项目,你将不得不面对一个事实,那就是你的模块可能在不知道哪一天,被MS收入到FrameWork只中,并对你只字不提~~~这实际上导致了开源工作开发人员去和MS那巨大的商业机器去竞争,我可以完全的肯定是,这事事没有人愿意干的。
我们是应用开发人员,Java和.Net之间的优劣说实话,我们没有必要去争论,我们要做的就是用最好的技术手段(注意什么是最好的技术手段可不是一个简单的问题)去实现我们的商业逻辑。我们需要的是一个长期稳定,有人维护的,价格低廉的(最好是免费的)的平台,他应该符合我们的使用风格(什么是你的风格?),能够使用这个平台生产产品,让Boss满意,让客户满意。
幸运的是,我们拥有了两种这样的平台,那就是.Net和Java。更加令人欣慰的是他们之间都表现的异常谦虚,都在努力(也可以认为是无耻的)学习对方的优点来充实自己。双发的发展速度可以说是一天比一天快。这对于我们应用开发人员来说毫无疑问是幸运的。
最后,我们始终需要记住的是:一个系统的好坏不取决与我们用哪个平台,而是你是否正确的,充分的,合理的发挥了你选择的平台的优势。系统好坏的取决于你。