分享我几个月在.net水区的灌水的感悟
有一日闲来无事我突发奇想,把昵称改为JAVA之王来到.net水区“踢馆”,后来发现这越来越有意思,一发不可收拾。
有反对者也有支持者,反对者往往争锋相对,支持这也能提出自己的见解,让我学到许多东西,特别是对于技术有了更深的认识,比几个月前的认识要丰满多了。
有网友质疑我人品有问题,总是喷自己不喜欢的东西,自己不喜欢不代表别人不喜欢。有位学生朋友说,他把编程语言看成自己的兄弟,我对他的兄弟评头论足就是对他不尊重。我觉得这个观点很有意思,也有一定道理,我当初也没想到有人会这么想。看来那些对我恶语相向的人也都是这么想的。
我说的最多的就是C#,其实我的想法也在不断变化。经常看到有人夸耀MSDN好用,Visual studio好用,C#的新特性怎么样。JAVA经常被用来和C#比较,某特性C#有而JAVA没有,这些话常被C#粉挂在嘴边。以前我也会对那样说的人提出争锋相对的观点,来维护JAVA在我心中的形象,现在看清了它的本质,心态变得更平和了。微软的C#是捆绑在Visual studio上一同销售的商品。既然是商品当然得有买点,有商业噱头,当然得提供完善的服务啦。我从不反对他们用C#,作为一种商品,能得到用户的认可,微软算是成功了。但是微软也不能阻止有些用户给它差评吧。
从某些方面来看,JAVA确实朴实无华,有些人说它很土,我也不会为此动气。JAVA诞生之初,那是非常霸气,JAVA粉到处夸耀JAVA的简单易用,使C++粉相当不爽,JAVA和C++粉的口水仗曾经打得相当火热。这些都是题外话,现在我也能看见许多地方,C#粉和C++粉在舌战。
为什么JAVA后来就没这么霸气了呢?是盛极而衰?不是,是因为它已经融入了开源产业链,成为一个“资源”,如果说JAVA诞生之初是个商品,那么从Sun把它开源之日起,他就变成了一个资源。资源就像空气、水和土壤,任何人都可以分享和使用的东西。JAVA成为了资源。IBM用它做出eclipse然后开源,于是eclipse也变成了资源,许多组织以eclipse为基础开发出新的IDE。Spring成立之初只是一个JAVA框架,如今已经发展成集mobile、MVC、大数据于一体的开发平台。JBoss当初只是个JAVA写的开源服务器,如今已经成为Redhat旗下的开源服务商,Hibernate被JBoss收购成为JBoss的开源项目之一。JAVA催生出新的编程语言Groovy Ceylon,JRuby,Scala选择在JVM运行,编程领域的资源真是爆炸式的增长……说了这么多,三天三夜也说不完,其实这些对我们来说都是资源,应该善待它们。
那些资源之间都可以相互共享的,在一个项目里可以同时使用eclipse Jboss Spring Groovy、Spring为Hibernate做了扩展,这并不奇怪因为那些在技术领域就是水和土壤般的存在。在这里不得不提到.net程序员熟知的Mono,我虽然说Mono项目是个吃力不讨好的项目,但是我打心底佩服Mono的程序员。他们付出很多,表面上没有其他开源项目风光,经历了被收购被抛弃再度自立门户,微软不给他们提供支持,C#的类库要靠他们自己去实现,无法与JAVA兼容使得资源没法转化,微软拥有最终解释权……顶着这么大的压力,他们也能把C#变成一个资源,这对.net程序员来说是一个福音。Java项目也会提供借口给Mono调用,因为都是资源嘛。所以我在这里建议大家去学学Linux,学会运用这些资源。
下次当我看到某个用户指责一个商品有问题,我可能会加入他一伙喷两句。但是我看到某人对着“空气和水”喷,我一定会想:这人一定是疲劳过度,神志不清。
很多人都在迷茫,选择什么技术比较好?我过去也有这种迷茫,现在我一点都不迷茫。图省事的选择一个商品,并且相信它适合你,我支持你的想法;有能力合理运用资源的,当然选择资源,那是相当丰富。当然资源也有适用范围,也会过时,比如核电站就可以取代现有的火电站,如果将来JAVA过时了,我就转行,或者学习“核能”的使用方法,现在嘛我很安心的写着JAVA代码。