java过时了吗?听起来有些人会感到惊讶和不屑,但是网上关于java过时争论却一直没有停止过,是谁在高谈java过时论,难道java真的走到了生命的结点了吗?
ror挑战java web领域
java过时论的传言由来以久,随便在google上一搜就能搜到191,000条数据,这些数据足可以说明很多人在关心java技术的过时与否,在众帖子最显眼的便是崇尚敏捷web开发的ribbin大师,ribbin曾经说过“四年以前,当我开始鼓吹hibernate,抨击ejb的时候,遭到的是群起而攻之的场面,但是不到一年之后,hibernate已然得到了普及和大多数java开发人员的认可;
在三年以前,当我开始赞誉spring的时候,spring还面临着ejb3的阴影,以及ejb2对其不登大雅之堂的指责,然而不到一年的时间,spring已经成为绝大多数java开发人员的首选;
在两年以前,我极力希望宣传webwebwork,唱衰jsf,时至今日,webwebwork以struts2.0的身份容登大雅之堂,而jsf还在靠厂商死挺着;而当一年之前我开始采用ror开发javaeye的时候,ror的置疑之声还甚嚣尘上,但当我在今年初预言07年下半年ror在国内会被广泛接受的时候,很多人已经笑不出来了;”
ribbin多年来一直是java的企业咨询专家,后期投入到ror的开发中,做为大师我想他的这些预言有绝对的权威性,ror在web领域的表现是勿庸置疑的,而java在web领域这么多年,开源框架的混乱,学习的曲线坡度增加,吓退了很多开发者,转而投向其它开发语言,ruby号称目前主流的web开发技术当中开发速度最快的开发工具,可以达到j2ee框架开发速度的5-10倍,单从这数字上可以看出,ror在web领域进步开始超越java等其它众多开发语言。
数字终归是数字,我们还要具体情况具体分析,就目前的情况来说,ruby还挑战不了java王者的地位,从可以预见将来ruby也不会取代java的地位。这是因为: 促成java成为当今天主流开发平台,是有很多因素综合作用导致的,而且也有一个历史机遇的问题。当应用软件开发方式从c/s转向b/s的时候,java抓住了历史机遇,造就了目前全球多数应用软件厂商都基于java开发软件的事实,java在整个全球的商业价值。并且从从java自身的语法角度来说,也非常适合目前软件外包产业的大规模分工协作。此外java并没有固步自封,在开源社区和商业厂商双重强力推动下,java自身仍然在快速的进步,生命力很顽强。
ruby目前只是在web开发领域对比java有很强的开发效率优势,但并没有java那么齐全的产品线,从基础软件到web应用软件,从桌面到嵌入式开发,java无处不在。
java是主流的工业级别的编程语言这是一个即定的事实,就单个程序员个体的编程效率来说,远不如ruby,但是很多软件公司,特别是软件外包往往是几十人,上百人大规模团队协作开发,在这种情况下,个体的编程效率并不重要,重要的是团队之间协作和模块独立分割以及组合,java能够很好的满足这种软件开发模式。但是ruby显然不适合这种软件开发模式,ruby更适合小规模团队的开发(一般少于10人),采用敏捷开发方式,高效率的开发软件。
所以各位对java有兴趣的开发人员用不着恐慌,语言的多元化发展给我们程序员提供了更多的开发选择,java多年来的基础还在,到目前为止还没有一种超越java的开发语言出现,java过时的说法只是一种推测,一种想法而已。
ajax走出pc时代java移动领域受冲击
java过时论源于web领域的受到冲击,但是java在移动领域多年“太平天国”的局面也被打破,2007年月初诺基亚论坛副总裁lee epting证实,世界上最大的手机生产商正在研究“移动ajax”技术,该技术为诺基亚论坛的130万开发者开发出更丰富的手机应用提供支持。
并且提出java me现在在业务模型方面已经曝露出严重的缺陷, ajaxworld 2006大会的发言人ajit jaokar表示,xhtml也将走向它生命的结点,因为ajax提供了超级用户界面,末来将成为移动应用平台的最佳选择。
诺基亚走向ajax的另一个原因可能是来自于微软的.net compact framework的压力,诺基亚对此并不直接支持,而不得不坚持用java me、symbian os,以及最近的c++。
业内分析家认为,ajax与c++和java相比,不是一个高效的技术;因为它需要更多的处理能力和内存来达到同样的效果,但是他的确可以迅速的进行内容的开发,而对于移动互联网来说,对于高质量的内容有很大的需求,因此诺基亚选择了ajax。
ajax也能为下一代sim芯片上的内容提供理想的平台,这一点有的开发者已经进行了成功的部署。
2007年6月29日, apple在美国的旧金山,发布了跨越时代的手机iphone,ajax真正走出pc时代,从而实现了灰姑娘到白雪公主的转变,ajax的在移动领域成功,给java在移动领域构成的威胁是显而易见的。
iphone的推出是否会在业界产生连锁反应,我们无法判断,但是诺基亚的掉头转向ajax,将会使java在移动领域方面面临一次大的滑坡,也为高调宣传java过时论者提供了有力的证据。但是sun公司不会眼看多年打下的江山就此崩盘,jphone的推出也许是对iphone最有力回击,说明java fx开始绝地反击,群雄争霸的乱象不可避免。
唱衰java论者的高调宣言
在web领域和移动领域,如果java受到的冲击还只是零星碎片的话,形成不了集团优势,那么来自微软的全方位进攻,绝对是泰上压顶,.net是未来开发领域的趋势,是.net狂热者们的高调宣言。
虽然donet是抄java的,但是却抄的很讨巧,能够让大众接受,微软把它集成技术方面的优势发挥的淋漓尽致,易用,快速成为donet的王牌招式,反观java,就令人失望得多,java虽然创造了软件开发的神话,却没有持续辉煌的神话。
即使java在诸多方面存在着不足,但是我们不能否定它存在的价植,据sun公司2006年评估数据显示,java拥用全球450万开发者,与去年相比增加12%,25亿兼容java的设备,自2004年6月以来增长42%, 10亿java card,自2004年6月以来增长67%; •截止至2005年6月,支持java的手机数量已达到7.08亿部,于2004年6月相比,增长了23%,7亿台pc计算机,自2004年6月以来增长8%,除此之外,还有上百万台机顶盒、医疗设备、彩票终端机、打印机、网络摄像头、停车付费系统等。这些光环的背后在告诉我们java过时之路还很远。
即使.net获得成功了,java也不会退出舞台,因为java的跨平台性决定了java必须留下来,他会随着unix走向何方?这还是一个未知数。现在sun公司已经由盛转衰是一个不争的事实,但是对java过时论地宣扬还为时过早。
闽公网安备 35060202000074号