黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

Java設(shè)計模式

Java設(shè)計模式簡介

設(shè)計模式(Design pattern)代表了最佳的實(shí)踐,通常被有經(jīng)驗的面向?qū)ο蟮能浖_發(fā)人員所采用。設(shè)計模式是軟件開發(fā)人員在軟件開發(fā)過程中面臨的一般問題的解決方案。這些解決方案是眾多軟件開發(fā)人員經(jīng)過相當(dāng)長的一段時間的試驗和錯誤總結(jié)出來的。

設(shè)計模式是一套被反復(fù)使用的、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設(shè)計經(jīng)驗的總結(jié)。使用設(shè)計模式是為了重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。 毫無疑問,設(shè)計模式于己于他人于系統(tǒng)都是多贏的,設(shè)計模式使代碼編制真正工程化,設(shè)計模式是軟件工程的基石,如同大廈的一塊塊磚石一樣。項目中合理地運(yùn)用設(shè)計模式可以完美地解決很多問題,每種模式在現(xiàn)實(shí)中都有相應(yīng)的原理來與之對應(yīng),每種模式都描述了一個在我們周圍不斷重復(fù)發(fā)生的問題,以及該問題的核心解決方案,這也是設(shè)計模式能被廣泛應(yīng)用的原因。

什么是 GOF(四人幫,全拼 Gang of Four)?

在 1994 年,由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 四人合著出版了一本名為 Design Patterns - Elements of Reusable Object-Oriented Software(中文譯名:設(shè)計模式 - 可復(fù)用的面向?qū)ο筌浖? 的書,該書首次提到了軟件開發(fā)中設(shè)計模式的概念。

四位作者合稱 GOF(四人幫,全拼 Gang of Four)。他們所提出的設(shè)計模式主要是基于以下的面向?qū)ο笤O(shè)計原則。

• 對接口編程而不是對實(shí)現(xiàn)編程。

• 優(yōu)先使用對象組合而不是繼承。

設(shè)計模式的使用

設(shè)計模式在軟件開發(fā)中的兩個主要用途。

⒈開發(fā)人員的共同平臺

設(shè)計模式提供了一個標(biāo)準(zhǔn)的術(shù)語系統(tǒng),且具體到特定的情景。例如,單例設(shè)計模式意味著使用單個對象,這樣所有熟悉單例設(shè)計模式的開發(fā)人員都能使用單個對象,并且可以通過這種方式告訴對方,程序使用的是單例模式。

⒉最佳的實(shí)踐

設(shè)計模式已經(jīng)經(jīng)歷了很長一段時間的發(fā)展,它們提供了軟件開發(fā)過程中面臨的一般問題的最佳解決方案。學(xué)習(xí)這些模式有助于經(jīng)驗不足的開發(fā)人員通過一種簡單快捷的方式來學(xué)習(xí)軟件設(shè)計。

設(shè)計模式的類型

根據(jù)設(shè)計模式的參考書 Design Patterns - Elements of Reusable Object-Oriented Software(中文譯名:設(shè)計模式 - 可復(fù)用的面向?qū)ο筌浖? 中所提到的,總共有 23 種設(shè)計模式。這些模式可以分為三大類:創(chuàng)建型模式(Creational Patterns)、結(jié)構(gòu)型模式(Structural Patterns)、行為型模式(Behavioral Patterns)。當(dāng)然,我們還會討論另一類設(shè)計模式:J2EE 設(shè)計模式。

序號     

模式 & 描述

包括

1

創(chuàng)建型模式

這些設(shè)計模式提供了一種在創(chuàng)建對象的同時隱藏創(chuàng)建邏輯

的方式,而不是使用new運(yùn)算符直接實(shí)例化對象。這使

得程序在判斷針對某個給定實(shí)例需要創(chuàng)建哪些對象時更加

靈活。

抽象工廠模式(Abstract Factory Pattern)

單例模式(Singleton Pattern)

建造者模式(Builder Pattern)

原型模式(Prototype Pattern)

2


結(jié)構(gòu)型模式

這些設(shè)計模式關(guān)注類和對象的組合。繼承的概念被

用來組合接口和定義組合對象獲得新功能的方式。
 

適配器模式(Adapter Pattern)

橋接模式(Bridge Pattern)

過濾器模式(Filter、Criteria Pattern)

組合模式(Composite Pattern)

裝飾器模式(Decorator Pattern)

外觀模式(Facade Pattern)

享元模式(Flyweight Pattern)

代理模式(Proxy Pattern)

3


行為型模式

這些設(shè)計模式特別關(guān)注對象之間的通信。

責(zé)任鏈模式(Chain of Responsibility Pattern)

命令模式(Command Pattern)

解釋器模式(Interpreter Pattern)

迭代器模式(Iterator Pattern)

中介者模式(Mediator Pattern)

備忘錄模式(Memento Pattern)

觀察者模式(Observer Pattern)

狀態(tài)模式(State Pattern)

空對象模式(Null Object Pattern)

策略模式(Strategy Pattern)

模板模式(Template Pattern)

訪問者模式(Visitor Pattern)

4

J2EE 模式


這些設(shè)計模式特別關(guān)注表示層。這些模式是由

Sun Java Center 鑒定的。

MVC 模式(MVC Pattern)

業(yè)務(wù)代表模式(Business Delegate Pattern)

組合實(shí)體模式(Composite Entity Pattern)

數(shù)據(jù)訪問對象模式(Data Access Object Pattern)

前端控制器模式(Front Controller Pattern)

攔截過濾器模式(Intercepting Filter Pattern)

服務(wù)定位器模式(Service Locator Pattern)

傳輸對象模式(Transfer Object Pattern)

下面用一個圖片來整體描述一下設(shè)計模式之間的關(guān)系:

設(shè)計模式的六大原則

⒈開閉原則(Open Close Principle)

開閉原則的意思是:對擴(kuò)展開放,對修改關(guān)閉。在程序需要進(jìn)行拓展的時候,不能去修改原有的代碼,實(shí)現(xiàn)一個熱插拔的效果。簡言之,是為了使程序的擴(kuò)展性好,易于維護(hù)和升級。想要達(dá)到這樣的效果,我們需要使用接口和抽象類,后面的具體設(shè)計中我們會提到這點(diǎn)。

⒉里氏代換原則(Liskov Substitution Principle)

里氏代換原則是面向?qū)ο笤O(shè)計的基本原則之一。 里氏代換原則中說,任何基類可以出現(xiàn)的地方,子類一定可以出現(xiàn)。LSP 是繼承復(fù)用的基石,只有當(dāng)派生類可以替換掉基類,且軟件單位的功能不受到影響時,基類才能真正被復(fù)用,而派生類也能夠在基類的基礎(chǔ)上增加新的行為。里氏代換原則是對開閉原則的補(bǔ)充。實(shí)現(xiàn)開閉原則的關(guān)鍵步驟就是抽象化,而基類與子類的繼承關(guān)系就是抽象化的具體實(shí)現(xiàn),所以里氏代換原則是對實(shí)現(xiàn)抽象化的具體步驟的規(guī)范。

⒊依賴倒轉(zhuǎn)原則(Dependence Inversion Principle)

這個原則是開閉原則的基礎(chǔ),具體內(nèi)容:針對接口編程,依賴于抽象而不依賴于具體。

⒋接口隔離原則(Interface Segregation Principle)

這個原則的意思是:使用多個隔離的接口,比使用單個接口要好。它還有另外一個意思是:降低類之間的耦合度。由此可見,其實(shí)設(shè)計模式就是從大型軟件架構(gòu)出發(fā)、便于升級和維護(hù)的軟件設(shè)計思想,它強(qiáng)調(diào)降低依賴,降低耦合。

⒌迪米特法則,又稱最少知道原則(Demeter Principle)

最少知道原則是指:一個實(shí)體應(yīng)當(dāng)盡量少地與其他實(shí)體之間發(fā)生相互作用,使得系統(tǒng)功能模塊相對獨(dú)立。

⒍合成復(fù)用原則(Composite Reuse Principle)

合成復(fù)用原則是指:盡量使用合成/聚合的方式,而不是使用繼承。

全部教程
主站蜘蛛池模板: 午夜按摩 | 一级片一区 | 国产美女丝袜黑色视频 | 日本黄a三级三级三级 | 亚洲免费大全 | 午夜伦理在线播放 | 天天草视频 | 91久久青青草原线免费 | 18年大片免费在线 | 一个人看的视频www在线看 | 色哟哟久久 | 狠狠躁夜夜躁人人爽天天 | 伦理片免费观看 | a级大片免费观看 | 国产综合在线观看视频 | 不卡一区二区在线观看 | 91在线欧美 | 伊人99在线 | 男女一进一出免费视频 | 性色毛片免费视频 | 草久久网 | 美女一级大黄录像一片 | 国产精品成人观看视频国产奇米 | 中文字幕一区二区三区视频在线 | 国产日韩精品在线 | 中国国产成人精品久久 | 9久9久女女热精品视频免费观看 | 欧美妇性猛交视频 | 毛片福利视频 | 欧美成人精品不卡视频在线观看 | 日日操日日舔 | 成人久久18免费网址 | aaa一级黄色片 | 日韩视频在线观看免费 | 手机看片国产免费久久网 | 91成人小视频 | 日批免费 | 二级毛片免费观看全程 | 欧美日本韩国国产 | 91精品视频免费在线观看 | 久久免费视频8 |