什么是設(shè)計模式
20世紀(jì)60年代的軟件危機使得人們開始重視軟件工程的研究。起初,人們把軟件設(shè)計的重點放在數(shù)據(jù)結(jié)構(gòu)和算法的選擇上。隨著軟件系統(tǒng)規(guī)模越來越大、越來越復(fù)雜,整個系統(tǒng)的結(jié)構(gòu)和規(guī)格說明也顯得越來越重要。面對日益復(fù)雜的軟件系統(tǒng),人們開始認識到,要真正實現(xiàn)軟件的工業(yè)化生產(chǎn)方式,達到軟件產(chǎn)業(yè)發(fā)展所需要的軟件生產(chǎn)率和質(zhì)量,軟件復(fù)用是一條現(xiàn)實可行的途徑。
1995年,《Design Pattern》(中譯“設(shè)計模式”)一書問世,成為面向?qū)ο缶幊讨惺褂媚J交椒ǖ拈_創(chuàng)性著作。這本書對于軟件實踐中的一些不斷變換面孔重復(fù)出現(xiàn)、但特征和解決方案的本質(zhì)卻十分類似的問題進行了總結(jié)歸納,提煉出23個具有代表性的模式。設(shè)計模式本身并不是一種具體的“技術(shù)”,它講述的是思想。它不僅僅展示了接口或抽象類在實際案例中的靈活應(yīng)用和智慧,還讓開發(fā)人員能夠真正掌握接口或抽象類的應(yīng)用。更重要的是,該書提煉的這些設(shè)計模式反復(fù)強調(diào)的宗旨是盡量提高程序的使用率,讓程序盡可能的可重用。
Java中的設(shè)計模式
Java語言作為面向?qū)ο缶幊陶Z言的優(yōu)秀代表,它擁有簡單易用的特性,以及強大的功能,非常有利于設(shè)計模式的實施。Java發(fā)展到現(xiàn)在,按應(yīng)用主要分為三大塊:J2SE、J2ME和J2EE,這也就是Sun ONE(Open Net Environment)體系。J2SE就是Java2的標(biāo)準(zhǔn)版,主要用于桌面應(yīng)用軟件的編程;J2ME主要應(yīng)用于嵌入式系統(tǒng)開發(fā),如手機和PDA的編程;J2EE是Java2的企業(yè)版,主要用于大型分布式網(wǎng)絡(luò)程序的開發(fā),如電子商務(wù)網(wǎng)站和ERP系統(tǒng)。Java技術(shù)已經(jīng)逐漸成為電子商務(wù)主流技術(shù)之一。在Java的各個平臺中,設(shè)計模式有很多精彩的應(yīng)用,而且隨著Java技術(shù)的不斷發(fā)展,設(shè)計模式也在不斷豐富。
J2SE與設(shè)計模式
早期發(fā)布的設(shè)計模式主要來自桌面應(yīng)用軟件的開發(fā)經(jīng)驗。在《Design Pattern》一書中,所有的模式都是通過面向桌面應(yīng)用的窗口程序來舉例說明的。相應(yīng)的在J2SE中,貫穿了設(shè)計模式的思想,尤其是大量運用了MVC模式。
相關(guān)推薦:計算機技術(shù)與軟件專業(yè)技術(shù)資格(水平)考試官網(wǎng)匯總
2011年計算機軟件專業(yè)技術(shù)考試考場規(guī)則(筆試)
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |