经常可以在论坛上可以看到这样的帖子:“小弟要学 Java 了,可是听说 Ruby 现在如日中天,要取代 Java 了,到底如何选择?”、“ Borland 要卖掉 Delphi 了,学 Delphi 还有没有前途?”、“学 Java 应该用 JBuilder 呢还是 Eclipse 呢?”……这样的帖子经常可以成为论坛中点击率回帖量最多的帖子。我曾经警告过自己不要去点击这种帖子,以表明自己有多么的“拽”,以示自己的“清高”,可是经常仍然忍不住诱惑而点进去。春秋时期的群儒论战在这里又得到了重现,每个人都以自己的亲身经历讲述到底那个语言更有前途,讲述为什么 C# 程序员没有 Java 程序员公司高,偶尔也有回帖曰:“语言不重要,思想才重要”,可是立即就被后边回帖的人反驳:“你说思想重要,那么要求你一个月时间用你不熟悉的一个语言开发一个系统出来,你还思想不思想?”,遂唾沫横飞……
如果说语言之争是赤裸裸的话,那么框架之争就显得隐蔽多了:“ EJB3.0 要出来了, Hibernate 还有没有前途”、“做 Struts 的工资高还是做 WebWorks 的工资高”、“ Spring 万岁, EJB 去死!”。
上面这些问题的答案是什么?我也不知道。
我只知道——
有个人由于工作的需要,学了一周的 C#, 然后就用 C# 开发出一个 ORMMaping 框架来;
有一个 PB 用了八年的老手因为公司转用 Java 而失业 ;
有人只学了一个月的 Java 就在应聘中击败了有多年开发 Java 开发经验的老手;
一位有多个大型项目经验的人被问之什么是多态的时候,他回答“是化学里边的词汇吧”;
有个人用了两个月的时间搭建出了一个企业开发平台,这个平台后来发展成为一个核心企业开发平台;
有个用 Websphere Studio 开发过多个大型项目的高手在转用 JSP 的时候写出来的代码被人笑掉大牙;
我还知道——
任何语言都是由循环、顺序、分支结构组成的;
Eclipse 是很多由 C++ 转过来的人员开发的,虽然 Eclipse 代码中还有很多 C++ 的影子,但是没有人说 Eclipse 写的不好;
Java 中的 CachedRowSet C# 中叫脱机 DataSet ,在 Delphi 中叫 ClientDataSet
JSF 是向 C# WebForm 学习的,而 IntraWeb 早在 WebForm 之前就实现了拖放式 Web 开发;
EJB 中的声明式事务在 DCOM 中就有了;
...