正常化中的 JSR 299 與可能到來的 JSR 330
轉載請保留作者資訊:
作者:88250
Blog:http:/blog.csdn.net/DL88250
MSN & Gmail & QQ:DL88250@gmail.com
目前,JSR 299(Contexts and Dependency Injection for Java EE) 處於社區評審狀態 ,預計今年 9 月會出現在 Java EE 6 規範中。JSR 330(Dependency Injection for Java )是一個提交中的規範。還沒有規範檔案可以下載到。
299 的 Lead 是來自 JBoss / RedHat 的 Gavin King(Hibernate / Seam Lead),330 的 Lead 是來自 Google 的 Bob Lee(Guice Lead)以及 Spring。兩位都是做技術的,私下也是好朋友。
不過,從規範名就可以看出其中的衝突.... 都是 DI,這個讓整個 Java 社區都感到困惑了,我們需要兩套 DI 標準。
Gavin 在 5 月 7 日的博文 中稱述了他的看法,一石激起千層浪....兩個 Lead 互相做了技術評判:Gavin 是典型的 Java EE 擁護者;而 Bob Lee 則是 Java SE 的捍衛者。
在一系列的回複中,Gavin 不改以往本色,快人快語,對 330 的提出表示了極大的不滿,認為規範多餘了,其涉及的功能 299 都覆蓋了,而且做得更好。並且笑話了 Bob 提交的規範竟然是一些 JavaDocs ....
Bob 做了一些回答,並說是 Gavin 沒看懂 330 規範.... 不過,Bob 確實是 SE 的捍衛者,說了 EJB 種種不是,也對即將到來的 Java EE 6 中的 EJB Lite 表示了質疑。不過 Bob 對 JSR 294(Improved Modularity Support in the JavaTM Programming Language)倒是滿懷信心 :-)
5 月 19 日,Gavin 重新發布了一個 299 的社區評審版 ,將規範名改為 For JavaEE 了,看來還是堅定 EE 路線,對 Bob 的規範持:“我做我的,你做你的,走著瞧” 態度。
Java 陣營這邊曆來都是那麼動蕩,不是規範實現沒人用就是沒有規範。對於開發人員來說,如果盲目跟從則容易迷失自我。所以,筆者建議在 IoC / DI 上還是用自己拿手的那套,299 / 330 持觀望態度 :-)