伟大的jsr250

如果sun保持它一贯的学究做派,这将是近年来jcp上最伟大的一项jsr。
要说明jsr250的伟大,先看一下jsr175,表面上看175的确带来了开发上的简便,再也不需要冗长的xml来做metadata descript了,简单优雅的通过一系列annotation,来刻画一个类的元信息,似乎一切都是那么清晰明媚,然而实际上却是存在着更大的混乱。第一个问题就是不同framework里的同语义的注释。比如jdo和hibernate都会有他们自己的annotation来描述持久化字段,那么你的persistent object到底用哪一个?在以前,这个东西不成问题,写好po我可以通过额外的xml来描述它使用什么persistent机制进行存储,跟换存储机制也不需要修改code,自从有了175,以懒惰为美德的程序员为了简便开始应用annoation了,那么我把一个po从hibernate移植到jdo是不是要用jdo的annoation重新标注一下我的源代码呢?第二个问题是对于保留至runtime的annoation的bytecode依赖问题,隐性的造成了不必要的依赖关系。jsr175是java的Pandora's Box,华美的外表下隐藏着极度的危险和混乱。
jsr175能实质性的帮助java程序员减轻开发负担,一套统一语义的annoation是必要的前提,这也正是jsr250所要覆盖的范围。当然,如果jsr250仅是简简单单一套annoation的话,它远称不上伟大。jsr250极有可能会促使sun规范j2se和j2ee的metamodel,如果是metamodel,最有可能的是一套mof的m2模型,来刻画j2ee系统内的组件,安全,事物,分布等等关注点(IBM一定会努力促使它的j2ee mof成为标准,这一点上bea和oracle没有竞争优势),来统一语义,然后针对这一套统一的m2 model,形成一套annoation,一栋金光熠熠的j2ee大厦就要落成,这将是企业级软件开发史上的盛事。目前所有的framework都将掩盖在jsr250的光辉下,成为下游技术集成商,j2ee的喧嚣将成为过去,在统一技术语义的j2ee,竞争将在业务层面重新展开。

posted on 2004-09-16 16:38  raimundo  阅读(10563)  评论(4编辑  收藏  举报

导航