除歲迎新 Java 2005回顧&2006展望 – JAVA編程語言程序開發技術文章

過去的一年,Mustang 沒能出來,EJB3剛剛才提交最終草案,Ajax興起但是五花八門不知道應該用誰,Aspectj 5出來瞭,但是缺乏驚喜。

或許我們會說,過去的2005,Java界缺乏成績,但是卻毫無疑問,Java遙遙領先於其他語言。從11月的語言排行榜Java遙遙領先,到今年的Java圖書銷售統計上,Java圖書銷售總數是C#的2倍,PHP的2.5倍,Perl的4倍,Ruby/Python的9倍.

這足以讓我們對2006充滿想象。

不過,還是讓我們先回顧下2005吧….

1、2005 之 Java 對手

過去的2005,Java無疑是最受歡迎的語言。但是Java也面臨其他語言的挑戰,其中Bruce A. Tate,在一文中,提出瞭有可能挑戰Java開發的4種技術,包括動態語言,Continuation,Conventions,元編程等。

Ruby可以說是最有可能挑戰Java的語言,剛剛發佈的Rails1.0引起瞭Fans的瘋狂。Rails會不會是下一代偉大的框架?有可能。要做一個選擇的話,Rails應該會是在使用Ruby或是其他動態編程語言的元編程框架潮流中的第一個。但是Java已經開始引進Ruby的特性瞭,比如Trails,Groovy。

2、2005 之 Java 新玩意

·Drools:Drools 是一個基於Charles Forgys的Rete算法的,專為Java語言所設計的規則引擎。Rete算法應用於面向對象的接口將使基於商業對象的商業規則的表達更為自然。Drools是用Java寫的,但能同時運行在Java和.Net上。Drools提供瞭聲明式程序設計(Declarative Programming),並且使用域描述語言(Domain Specific Languages (DSL))。Web和持久層框架我們已經有很多選擇瞭,但是處在中間層的商務邏輯有好的框架嗎?你希望每次經理給你一個新的命令就不得不重編譯那些復雜的if … then 意大利面條代碼嗎?Drools- 商務邏輯框架的選擇這篇文章中,保羅佈朗推薦的Drools的規則引擎或許是完成這類任務的最好選擇;為你的基於SPRING的應用增加簡單規則引擎描述如何為流行的Spring框架開發簡單的規則引擎;在你的企業級java應用中使用Drools一文則向你展示如何在企業級Java應用中使用Drools.

·Portlet:“Portlets是一種Web組件-就像servlets-是專為將合成頁面裡的內容聚集在一起而設計的。通常請求一個portal頁面會引發多個portlets被調用。每個portlet都會生成標記段,並與別的portlets生成的標記段組合在一起嵌入到portal頁面的標記內。”(摘自Portlet規范,JSR 168)。2005,Portlet框架層出不窮。什麼是Portlet ?讓你的Portlet之旅從這裡開始。

·Ajax:2005年,還有什麼比Ajax更火呢?Ajax興起, 傳統Web框架將走向何方? 引起廣泛討論,一度讓人感受到瞭Ajax的兇猛之勢。雖然Ajax和Java沒有直接關系,但是毫無疑問Ajax也是Java界關心的東西。Ajax: Web應用的新方法介紹瞭這個將令人們興奮的技術。

Ajax的應用也層出不窮,比如Google就成功地使用瞭Ajax。用AJAX來控制書簽和回退按鈕告訴我們如何用AJAX來控制書簽和回退按鈕。

一系列框架也隨之而出來,比如DWR, Ajaxanywhere,Ajaxtags。其中:DWR讓AJAX如此簡單展示DWR如何使得AJAX的應用既簡單又快捷。初探AjaxTags展示如何使用Ajaxtags進行Ajax開發。

·SOA:當然,2005不僅是框架,2005還有SOA,BEA, IBM, ORACLE….. 一傢又一傢企業公佈瞭他們的SOA方案, 宣稱他們的產品支持SOA功能. SCA和SDO也將組成新的SOA編程模型。SCA和SDO將組成新的SOA編程模型說明瞭如何在實現瞭J2EE1.4規范的應用服務器之間,比如Oracle Application Server 10g,使用J2EE1.4建立可互操作的,輕便靈活的服務;SOA架構中的事件驅動服務討論使用Mule實現一個高效的事件驅動和面向服務的平臺; 面對SOA, 你準備好瞭嗎?

·RPC:Web應用的RPC方式調用,隨著Web2.0的興起,RPC方式逐漸成為Web調用的一種方式。

·分佈式組件開發:在一個分佈式應用當中,提供一個統一對外接口,通過可重用的外部API來滿足需求。Java組件開發:一個概念框架提出瞭一個構建概念框架地解決方案.

3、Hibernate繼續前進

Hibernate仍然是最受歡迎的企業級開發持久層方案,Ejb 3.0 的出現是否會讓Hibernate的發展有什麼變化嗎? 這無疑是讓大傢都感興趣的事情。過去的一年,關於Hibernate也有很多有趣的東西:Hibernate 3 的Formulas展現formula的各種特征是如何輔助模式轉換的;而Magicgod的Hibernate的思考則提出瞭提到瞭Hibernate的一些弱點。

4、Spring大熱

沒有什麼文章,比POJO應用框架:Spring與EJB3.0的比較 奪得更多的人的眼球瞭。Spring框架雖然很流行但並不是一個標準的開源框架,EJB3.0是由Java Community Process (JCP)制訂的標準框架,為所有主要的J2EE廠商支持。兩者都大量地使用瞭依賴註入。在SPRING中實現事務暫停討論瞭Spring的事務管理特性。在Spring中配置Hibernate事務探討瞭怎麼用Spring來裝配組件及其事務管理。愛上Spring的5個理由裡作者描述瞭他為何喜歡上瞭Spring;而使用EJB 3.0簡化企業級Java開發闡述瞭如何使用EJB 3.0 註釋來開發藕合松散的POJO應用及容器服務器如何管理POJO。

2006,看來還有一場大戰。

5、在Eclipse的影子下

調查表示,超過70%的開發者使用Eclipse進行開發。Eclipse毫無疑問已經占據瞭IDE的主流市場。Eclipse的興起,也間接引起瞭Borland的離去。但是也引起瞭IDE工具的競爭加劇,對開發者是件不折不扣的好事。成為Eclipse熱鍵高手提到瞭那些會讓你的手指動的飛快的熱鍵組合。這隻是Eclipse快捷方便的一個縮影。剛發佈的WTP,?? 好用的Myeclipse,都推動著Eclipse的不斷發展,或許這就是社區的力量。

6、ANT

ANT仍然很受歡迎。ANT不僅僅是一個Build工具,它還可以作更多的事情。使用Ant進行Web開發介紹WEB 應用程序的部署,包括get, serverdeploy, 和 scp等。使項目開發自動化描繪瞭用Ant自動化你的項目能帶來的好處。

7、2006的Java期待?

·EJB3: EJB3最終草案提交,預示著EJB3的即將到來瞭,相信明年一定程度上是EJB3年,簡化開發是否真的實至名歸?

·Mustang: 不知道Mustang 的出現,會給Java性能帶來多大的改變,寄存器優化不知道是不是能帶來革命的效果?

·JBI-ESB:JBI這個提瞭很多年的名詞,終於在今年大熱,相信明年JBI仍然會繼續發展。

·JSF:JSF有太多對手瞭,Struts,Spring mvc,特別是Webwork加入Struts之後,不過相信JSF也是值得我們期待

·AJAX:雖然有很多AJAX框架出來,但是killer級別的框架是誰呢?2006會揭曉嗎?

·Groovy:社區的力量使得Groovy越來越成熟和完善瞭。

·Rails:Ruby雖然和Java無關,但是我想多數人都在關心Rails。畢竟Rails還是我們所期待的東西。

·Spring2.0:Spring 2.0明年初就會發佈瞭,相信會繼續帶動Spring社區的狂熱。

相信在所有技術語言中,Java是2006年的熱點所在,讓我們共同期待2006。

發佈留言