J2EE與設(shè)計模式
J2EE屬于一種框架軟件。什么是框架軟件?它不同于以前接觸的Java API等,那些API屬于Toolkit(工具箱)。而J2EE不再被動地被使用、被調(diào)用,而是深刻地介入到一個領(lǐng)域中去。J2EE設(shè)計的目的是將企業(yè)計算應(yīng)用領(lǐng)域中不變的東西先定義好,比如整體結(jié)構(gòu)和一些主要職責(zé)(如數(shù)據(jù)庫操作、事務(wù)跟蹤和安全等),剩余的就是變化的東西,即針對這個領(lǐng)域中具體應(yīng)用所產(chǎn)生的不同的變化需求,而這些變化的東西就是J2EE程序員所要做的。因此,設(shè)計模式和J2EE在思想和動機上是一脈相承的。只不過設(shè)計模式更抽象,幾乎可以用于任何應(yīng)用;J2EE則是適合企業(yè)計算應(yīng)用的框架軟件,而設(shè)計模式是它的重要的理論基礎(chǔ)之一。
與此同時,在J2EE的框架下,一些應(yīng)用級的設(shè)計模式也逐步積累了起來,關(guān)于設(shè)計模式在J2EE中的應(yīng)用已成為許多論壇討論的熱點之一。其中,J2EE Web應(yīng)用的架構(gòu)設(shè)計引起了高度的關(guān)注。J2EE體系包括JSP、Servlet、EJB、Web服務(wù)等多項技術(shù)。這些技術(shù)的出現(xiàn)給電子商務(wù)時代的Web應(yīng)用開發(fā)提供了一個非常有競爭力的選擇。怎樣把這些技術(shù)組合起來,形成一個適應(yīng)項目需要的穩(wěn)定架構(gòu)是項目開發(fā)過程中非常重要的步驟。此步驟一般由架構(gòu)設(shè)計師完成,設(shè)計師根據(jù)項目需求,對J2EE體系中的各種技術(shù)進行篩選取舍,并考慮到開發(fā)過程中的角色分工、后期的運行維護,以及系統(tǒng)擴展性等諸多因素建立系統(tǒng)的架構(gòu)。一個成功的軟件需要有一個成功的架構(gòu),但軟件架構(gòu)的建立是一個復(fù)雜而又持續(xù)改進的過程,軟件開發(fā)者們不可能對每個不同的項目做不同的架構(gòu),而總是盡量重用以前的架構(gòu),或開發(fā)出盡量通用的架構(gòu)方案。
在當(dāng)前的J2EE Web應(yīng)用中,Apache Struts是最流行的架構(gòu)方案之一。它實現(xiàn)了MVC模式的概念,并將這些概念映射到Web應(yīng)用程序的構(gòu)件和概念中。Struts這個名字來源于在建筑和舊式飛機中使用的支持金屬架,其目的是幫助開發(fā)人員減少在運用MVC設(shè)計模型開發(fā)Web應(yīng)用的時間。
Apache Struts有以下的優(yōu)點:一些開發(fā)商開始采用并推廣這個框架;作為開源項目,有很多先進的實現(xiàn)思想;對大型應(yīng)用支持的較好;有集中的網(wǎng)頁導(dǎo)航定義。Apache Struts正在獲得越來越多的關(guān)注與支持。
J2ME與設(shè)計模式
J2ME標(biāo)準(zhǔn)為消費類產(chǎn)品(例如移動電話、雙向傳呼機和無線個人信息管理器)的應(yīng)用開發(fā)提供支持。這一類產(chǎn)品的特點是,顯示能力和存儲能力有限,計算能力和網(wǎng)絡(luò)訪問能力不夠強大。因此,J2ME設(shè)計模式就有了它所獨特的問題領(lǐng)域。比如,如果需要顯示比較大的數(shù)據(jù)集合,那么應(yīng)該采取什么樣的解決方案,才能適應(yīng)狹小的顯示區(qū)域?又比如,如果需要實現(xiàn)類似桌面軟件的選單選擇的功能,那么應(yīng)該如何設(shè)計才能夠足夠簡練和便于重用?J2ME的設(shè)計模式正在逐步的積累過程中,我們相信隨著J2ME的推廣J2ME設(shè)計模式的討論也將逐步成為一大關(guān)注熱點。
Java與設(shè)計模式的結(jié)合,為Java的發(fā)展帶來了更大的活力,也為設(shè)計模式提供了一個寬闊的舞臺。在這些技術(shù)的共同推動下,軟件產(chǎn)業(yè)將以堅實的步伐走進工業(yè)化時代。
相關(guān)推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |