js設計模式 設計模式基本概念 和 七大設計原則

2021-10-02 10:16:51 字數 3458 閱讀 7101

在軟體工程中看,設計模式是對軟體設計中普遍存在(反覆出現)的各種問題,所提出的解決方案。設計模式不是**,而是某類問題的通用解決方案。設計模式代表著最佳實踐。這些解決方案是眾多軟體人員的試錯和總結。設計模式包含了物件導向的精髓,懂得了設計模式,就懂得了物件導向分析和設計的精要。

設計模式的重要性

設計模式的目的

結構型模式

行為型模式

優點

#b,c表示兩類不同的功能

public

class

apublic

voidc(

)}==>

public

classab}

public

class

ac}

傳統方法的問題和介面隔離原則的改進

#類a通過inte***ce

e依賴類c, 其只依賴a()

,b()方法

public

classa}

#類c通過inte***ce

e依賴類d,且只依賴c()

,d()方法

public

classc}

#介面e

public

inte***ce

epublic

class

bimplements

epublic

class

dimplements

e

#類a通過inte***ce

e依賴類c, 其只依賴a()

,b()方法

public

classa}

#類c通過inte***ce

f依賴類d,且只依賴c()

,d()方法

public

classc}

public

inte***ce

epublic

inte***ce

fpublic

class

bimplements

epublic

class

dimplements

f

使用介面或者抽象類的目的是制定好規範,而不涉及任何具體的操作,把戰線細節的任務交給他們的實現類去完成。

依賴倒轉的核心思想就是:面向介面程式設計。層與層之間通過介面來訪問。不要在類的內部去new所依賴的物件,而是通過依賴關係傳遞到類內部來。

public

inte***ce

iopenandclose

public

inte***ce

tvpublic

class

aqytv

implementstv}

public openandclose implements

iopenandclose

public

static

void

main

( string[

] args )

}

public

inte***ce

iopenandclose

public

inte***ce

tvpublic

class

aqytv

implementstv}

public

class

openandclose

implements

iopenandclose

public

static

void

main

( string[

] args )

}

public

inte***ce

iopenandclose

public

inte***ce

tvpublic

class

aqytv

implementstv}

public

class

openandclose

implements

iopenandclose

public

static

void

main

( string[

] args )

}

依賴倒轉原則的注意事項和細節:

針對繼承父類方法,又不得不重寫父類方法的處理方案

子類重寫父類方法的情形

public

inte***ce

apublic

class

bimplements

apublic

voidb(

)public

voidc(

)public

voidd(

)}public

class

cextends

bpublic

voidb(

)public

voidc(

)public

voidd(

)}

遵循黎克特制替換原則的繼承處理

public

inte***ce

apublic

abstract

class

dpublic

voidb(

)public

abstract

voidc(

);public

abstract

voidd(

);}public

class

bextends

d pulic voidd(

)}public

class

c pulic voidd(

)}

#通過介面傳遞依賴關係,根據多型來動態新增功能

public

inte***ce

apublic

inte***ce

tvpublic

class

iqytv

implementstv}

public

class

bimplements

apublic

static

void

main

( string[

] args )

}

關於迪公尺特法則的簡單定義:

關於直接朋友:

模式設計的基本概念

設計習語,設計模式,架構模式 模式從目的上分類 建立型模式 工廠模式 抽象工廠模式 單例模式 建造者模式 原型模式 結構型模式 介面卡模式 橋接模式 過濾器模式 組合模式 裝飾器模式 外觀模式 享元模式 模式 行為型模式 責任鏈模式 命令模式 直譯器模式 迭代器模式 中介者模式 備忘錄模 觀察者模式...

PHP設計模式學習筆記 3 基本設計模式概念

mvc的特點是 通過檢視和模型之間建立訂閱 通知協議,實現檢視和模型的解耦。從mvc開始討論設計模式中的各種工具,應為大多數設計模式都是與mvc有關的,只有某些部分是與mvc沒關。ivehicle.php inte ce ivehicle car.php include once ivehicle....

設計模式概念

總體來說設計模式分為三大類 建立型模式,共五種 工廠方法模式 抽象工廠模式 單例模式 建造者模式 原型模式。結構型模式,共七種 介面卡模式 裝飾器模式 模式 外觀模式 橋接模式 組合模式 享元模式。行為型模式,共十一種 策略模式 模板方法模式 觀察者模式 迭代子模式 責任鏈模式 命令模式 備忘錄模式...