設計模式

1、設計模式的概念解讀

設計模式是一套被反覆使用、思想成熟、通過分類和無數實戰經驗的總結。使用設計模式是爲了讓系統代碼可重用、可擴展、可解耦、更容易被人理解能保證代碼的可靠性。設計模式使代碼開發真正工程化;設計模式使軟件工程的基石脈絡。如同大廈的結構同樣。只有夯實地基搭好結構,才能蓋好健壯的大樓。也是咱們邁向高級開發人員的必經一步。jquery

2、設計原則

一、開閉原則:對拓展開放、對修改關閉(高考試卷)算法

二、里氏轉換原則:子類繼承父類,單獨調用徹底能夠(盜版光盤)設計模式

三、依賴倒轉原則:引用一個對象,若是這個對象有底層類型,直接引用底層(和尚打水,直接從井裏打水到家,不必打出來放一個桶裏再弄回去)函數

四、接口隔離原則:每個接口一種角色(汽車usb插口)設計

五、合成/聚合複用原則:新的對象應使用一些已有對象,使之成爲新對象的一部分代理

六、迪米特原則:一個對象應對其餘對象有儘量少的瞭解對象

3、設計模式

一、工廠模式

(1)概念解讀:繼承

工廠模式定義一個用於建立對象的接口,這個接口由子類決定實例化哪個類。該模式使一個類的實例延遲到子類。而子類能夠重寫接口方法以便建立的時候指向本身的對象類型(抽象工廠)接口

這個模式很是有用,尤爲是建立對象的流程賦值的時候,好比依賴於不少設置文件等。而且,你會常常在程序裏看到工廠方法,用於讓子類定義須要建立的對象類型。開發

(2)工廠模式的做用和注意事項

做用(使用場景):

一、對象的構建十分複雜

二、須要依賴具體的環境建立不一樣的實例

三、處理大量具備相同屬性的小對象

注意事項:

不能濫用工廠,有時候是個給代碼增長複雜度

(3)工廠模式代碼實現和總結

二、適配器模式

(1)概念解讀:

適配器模式是將一個類(對象)的接口(方法或屬性)轉換成客戶但願的另外一個接口(犯法或屬性),適配器模式使得本來因爲接口不兼容而不能一塊兒工做的那些類(對象)能夠一塊兒工做。

(2)做用和注意事項

做用:

一、使用一個已經存在的對象,但其方法或接口不符合你的要求

二、建立一個可複用的對象,該對象能夠與其餘不相關或不可見的對象協同工做

三、使用已經存在的一個或多個對象,可是不能進行繼承已匹配它的接口。

注意事項:

與代理模式的區別,代理模式是不改變原接口適配,而適配模式會改變原來不符合規範的接口

(3)代碼實現和總結


三、迭代器

概念解讀:

迭代器提供一種方法順序訪問一個聚合對象中各個元素,而又不是須要暴露該方法中的內部表示。

jquery中咱們常常會用到一個each函數就是迭代器模式

模式做用:

一、爲了遍歷不一樣的集合結構提供一個統一的接口,從而支持一樣的算法在不一樣的集合結構上進行操做

二、對於集合內部結果經常變化各異,咱們不想暴露其內部結構的話,使用迭代器模式

注意事項:

一、通常的迭代,咱們至少要有2個方法,hasNext()和next(),這樣才作到遍歷全部對象。

二、遍歷的同時更改迭代器所在的集合結構可能致使問題

相關文章
相關標籤/搜索