星期六, 六月 19, 2004

Java prayer

赫赫,心情好,更新一篇


摘自《CSDN开发高手》:






争吵不断的Java阵营


最 近Java阵营内部战火纷飞,原来是不巧EJB3.0和JDO2.0都几乎同时发布重要消息。顿时引发Java阵营内部各路诸侯、各个山寨一片口水混战。 三个巨头IBM,BEA,Oracle为了巩固已有的市场,当然力挺EJB3.0,策略而技巧地批评JDO2.0。毕竟现在宣布JDO死刑还早,如果 JDO坐大,说不定哪天三巨头一下子收购一个JDO厂商,立即开始支持JDO也未可知。
而 挟最受欢迎O/R Mapping工具知名的Hibernate领军人Gavin King也高调杀入战团,不同的是他坦率得多,毫不掩饰对JDO的厌恶,狠狠地抨击JDO2.0。如果EJB3.0和JDO2.0还可以再理解为针对不同 架构的话,Hibernate则需要面对与JDO2.0的直接交战,大有不是你死,就是我亡的势态。
JDO阵营则异常低调,除了Kodo的Abe White(著名的Open source bytecode toolkit Serp的作者,Liberator JDO也使用Serp来实现Enhacer)指出Gavin King对JDO中几个理解错误外,基本没有官方评论,多半是JDO爱好者在反击。

既 然都说到了EJB3.0,我们就不得不提到它的一些新改变:首先,一个EJB不再是两个接口一个类,只要一个类就可以了,虽然现在用JBuilder开发 也不觉得累,但是总算清爽多了;基于POJO设计,POJO是最原是的普通的,没有任何继承的类,很干净,CMP再没那么怪异了;当然EJB部署调试也可 以在容器外执行,使用IoC模式的依赖注射模式替代了JNDI Locator。
很多东西都需要标准,现在我们现实生活中所有的产品都遵循一定的 标准,如IEEE或其它,前段时间IT界为无线标准争个不停。而成为标准的技术最终使客户受益,行业间标准的竞争产生了技术的发展,各家厂家也会对各自的 技术产生推动作用。有网友说Java“成也开源,败也开源”,虽然有点夸张,但我们可以想象它对于业界标准的重要,而太多的纷争最后就是造成标准的缺失, 这是所有Java开发人员不愿意见到的。


赫赫,痛快,EJB这种重量级的东西 终于有所改变了。虽然一直对EJB懵懵懂懂的,看过一些教材也做过一些EJB,但一直不能理解它,更无法看透它身后庞大的J2EE。Java阵营的开放性 诚然也是造成Java标准争议过多、制定和推行过慢的根源,这点肯定比不上.Net阵营中微软一呼百应的情景,JCP讨论个东西动不动就一年半载的,这开 发还怎么让人做啊!幸亏想学EJB时考试也接踵而来,没能深入的学,EJB3.0的规范让我看到了曙光,也让Java ONE面对.Net更多了一个筹码。
这是一个EJB3.0规范下的SessionBean示例:
@Session public class HelloWorldBean {


   public void sayHello (String s) {


      System.out.println("Hello:" + s);


   }


}




赫赫,爽呆~~~

J2EE 一直以来就是昂贵的代名词,看到J2EE、EJB就让人联想到IBM和Sun的大型机、WebLogic那种吃内存大户、JSP那样的反应迟钝,而且开发 起来过于复杂,总体来说不停地编代码、部署、测试,还要面对各种应用服务器之间的或明显或隐蔽的差异,总之两个字:痛苦……
虽然不太熟悉,但还是 稍微做过一些.Net方面的东西。编码时有VS.Net 2003,加上Visual Assistant .Net后几乎不必添置其他的开发工具,顶多再置办个Together for .Net Edition,而且运行速度都比什么JBX、IDEA、Workshop快得多,部署也方便,Asp.Net的页面通过本机或远程身份验证直接就发布到 IIS上了,何等惬意……
正是因此,也导致大量Java程序员流向.Net阵营,北美洲的Java和.Net程序员数量的变化大致能勾勒出这种趋 势。.Net有强劲易用的操作系统,快速方便舒服的IDE,操作简便的服务器,关键是对运行效率的操作系统级别支持,无论哪一点对辛苦经营的Java程序 员来说都有无比的吸引力,再看看Java ONE这边,不统一的操作系统,慢吞吞的IDE,配置复杂、启动和重启都异常耗时的应用服务器,再加上难以提高的运行效率,剩下可以拿来夸口的只有出色的 跨平台能力和标准的开放性了,但这在Windows不断蚕食服务器系统市场,和Mono不断进步的情况下也越来越难以启齿。我们该何去何从……


不清楚当初从笃定心思学.Net到转为学Java是不是个失败,我总是告诫自己语言和平台是相异的但思想是相通的,但一下子在开发平台上的转换始终会令人不知所措,找不到自己的位置和方向。
现在能做的,也只是静静的bless自己支持的Java ONE和*nix操作系统能一路走好了……


嗯,也许,我可以用J# 哈哈,不说这种丧气话了~~~


BTW,bless my LP,她正在奋斗六级

没有评论: