熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

2004開發技術年度綜述之Java世界

2022-06-13   來源: Java核心技術 

  年Java世界發生了巨大變化主要方面是誕生和發展了幾個新名詞IOC AOPSOAMDA當然除了這些都是決定Java技術未來走向的革命性發展以外還有很多細部和微觀的發展我們先來談談這些重要的細節技術發展
  
  首先 Java的根基JDK已經跨越到了JSE 或者稱為JSE 不過我更喜歡稱它為延續性是我們應用程序員更關心的當然革命性是那些新技術發明者更陶醉的所以他們曾經取名JSE 現在為了表示這種跨越而且跨越是非常巨大一下子達到了JSE非常誇張不過老外在技術上確實經常極端偏執者才能生存我想是其行動主義文化的主要基礎
  
  JSE 最吸引眼球的我認為主要是annotate特性該特性可以大大降低程序員的編程量它和Java Relfect機制結合可以編制出相當靈活的軟件系統或框架
  
  從JSE看出SUN正在試圖簡化Java但是也許這一簡化動作來得遲了點
  
  同樣珊珊來遲的是JEE Web層的一個標准JSFJSF使得程序員在開發JEE的Web程序時能夠如同開發SWING那樣實現可視化開發提高了開發效率但是必須有高級開發工具支持
  
  由於好東西來得太遲在一份最近調查中顯示開源項目Struts已經在JEE實際Web層開發中占據主導地位Struts在年是達到成熟頂點它的主要特點是將Form表單對象化同時提供簡單的XML標簽替代以前Jsp中的Java語言這樣在Jsp中徹底消滅了Java代碼除了StrutsTapestry這種徹底拋棄Jsp的開源Web框架產品也值得一提它和WebWork一起成為一顆引人注目的星星
  
  年發生了太多新的激動人心的事情其中最引人注目的是AOP和SOA的迅速發展Java世界的發展一直以來是分兩條路線第一條是工業路線以SUNIBMBEA和Oracle等工業巨頭為代表的業界標准當工業巨頭制定出EJB 以後他們認為在JavaBeans技術框架內EJB已經走到極限基本無需太多發展因此他們將關注目光投向軟件系統服務功能上當一個個EJB組件提供了可重用的功能後如何向不同客戶輸出這些強大的可重用的功能呢?是反復安裝拷貝這些組件功能?還是以一種服務的方式適時提供全面的租用?SOA面向服務架構因此提出來並且得到工業界巨頭的大量投入和發展同時他們還在關注流程的可定制化和可視化開發通過強大的開發平台可以很輕松地完成工作流的業務定制和修改
  
  當業界巨頭關注重點從JavaBeans結構轉移時一種新的設計思想和編程風格AOP(面向方面編程)誕生了面向方面編程是OOP面向對象編程的延續AOP於年底已經在國外熱起來到了年應該算是全面開花各種AOP產品如JBoss SpringAspectwerkz等迅速誕生和發展帶給程序員全新的概念和理念沖擊AOP編程方法可以應用在軟件開發的各個領域當你發現某個功能具有普遍性和通用性以後那麼這個功能也許可以使用AOP實現這樣你的代碼優雅同時可維護性和拓展性大大增強
  
  Ioc反轉控制應該說有著AOP類似解耦思路通過Ioc模式或容器可以比較徹底分離JavaBeans之間的調用和被調用關系達到真正地面向接口編程是Ioc使的面向接口編程變得更具有意義而且重要Ioc的產品如純潔的PicoContainer以及Spring等等
  
  開源和業界標准的分歧不僅僅體現在JavaBeans體系發展上還體現在對象持久化方式上年有三種流行的對象持久化在被廣泛使用EJB的CMPHibernate和JDO這三者之間的區別和聯系也是很多程序員津津樂道的特別是Hibernate的創始人Gavin King不斷對JDO的質疑使的Hibernate名氣大升也使的JDO一直未能夠進入EJB的持久化標准Spring+Hibernate架構以及使用基於JBoss的EJB架構成為低成本高質量JEE流行架構
  
  這種混亂的局面下EJB 標准Preview方案被年Java ONE大會首次提出EJB 試圖取悅那些輕量方案的追隨者同時又能兼顧過去EJB標准的系列發展JBoss迅速地提供了對EJB支持包其中我們看到了Gavin King這位斗士的身影
  
  同時Hibernate向何處去是我們應用系統程序員關心的Struts 正在向JSF標准靠攏和遷移Hibernate是否能夠一直孤軍作戰?目前一項旨在統一JEE持久層技術的標准方案正在啟動中我們期望簡單統一的持久層方案出台減少程序員選擇遷移之苦
  
  年又是Java世界吵鬧的一年有的程序員說現在學java卻越學越糊塗看了很多東西不但大腦裡沒有頭緒反而有種走火入魔的感覺因為各種技術派別都在爭奪話語權話語權的爭奪意味著商機的誕生JBoss和Spring的開發團體先後轉為商業公司是一個證明對於應用者來說沒有永遠的解決方案只有合適的工具Java世界提供給你的是工具箱而非一種選擇需求是選擇工具的唯一原因
  
  讓我們視野從JEE思想和技術之爭轉移到需求分析領域的領域在這個領域一直也存在兩種意見面向數據表分析還是面向模型分析?也就是說建立一個新的系統是先分析設計數據表還是模型前者是以前數據庫系統經常采取的方式但是這一傳統的方式目前也受到OO對象的沖擊MDA(面向模型分析)在年成熟開花各種Java成品也如雨後春筍一樣遍地開花MDA思想提出了極端觀點將來只有建模專家(其它程序員都變成藍領工人了)只要建模專家通過UML設計出一個系統的模型通過特定的Java MDA工具就可自動生成相應的代碼好像真的不需要普通程序員了
  
  結束語
  總之年的Java技術帶給我們更多的是激動和壓力新技術發展以月計算作為程序員的我們如何跟上這些新技術發展同時能夠選擇正確的技術引入我們自己的應用系統這些才是我們的真正挑戰
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26704.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.