設計模式學習(一) 七大原則

2021-10-09 00:21:15 字數 3376 閱讀 5787

介紹:對於類來說,就是乙個類只負責乙個功能。

應用例項:比如在操縱資料庫表的時候,就會建立乙個dao類來操縱單乙個資料庫的表的增刪改。userdao操作user表的增刪改。

單一職責原則 ,注意事項和細節:

介紹:客戶端不應該依賴它不需要的介面,即乙個類對另乙個類的依賴應該建立在最小的介面上

應用舉例:

基本介紹:依賴倒轉原則dependence inversion principle 是指:

應用例項:傳送郵件

public

class

test1

}class

email

}class

person

}

public

class

test2

}inte***ce

ireceiver

class

email

implements

ireceiver

}class

weixin

implements

ireceiver

}class

person

}

依賴關係傳遞的三種方式:

inte***ce

ireceiver

inte***ce

receiver

class

email

implements

ireceiver

}class

weixin

implements

ireceiver

}class

person

implements

receiver

}

inte***ce

ireceiver

inte***ce

receiver

class

email

implements

ireceiver

}class

weixin

implements

ireceiver

}class

person

implements

receiver

public

void

receive()

}

inte***ce

ireceiver

inte***ce

receiver

class

email

implements

ireceiver

}class

weixin

implements

ireceiver

}class

person

implements

receiver

public

void

receive()

}

注意事項和細節:

基本介紹:

通過乙個**進行思考:

public

class

test3

}//a類

classa}

//b類繼承了a

//增加了乙個新功能:完成兩個數相加,然後和9求和

class

bextends

apublic

intfunc2

(int a,

int b)

}

public

class 黎克特制替換

}class

base

//a類

class

aextends

base

}//b類繼承了a

//增加了乙個新功能:完成兩個數相加,然後和9求和

class

bextends

base

//加法再加9

public

intfunc2

(int a,

int b)

//a的減法

public

intfunc3

(int a,

int b)

}

基本介紹:

應用舉例:

public

class

test4

}//這是乙個用於繪圖的類 [使用方]

class

graphiceditor

//繪製矩形

public

void

drawrectangle

(shape r)

//繪製圓形

public

void

drawcircle

(shape r)

//繪製三角形

public

void

draw********

(shape r)

}//shape類,基類

class

shape

//矩形

class

rectangle

extends

shape

}//圓形

class

circle

extends

shape

}//新增畫三角形

class

********

extends

shape

}

改進思路分析:

public

class

test4

}//這是乙個用於繪圖的類 [使用方]

class

graphiceditor

}//shape類,基類

abstract

class

shape

//矩形

class

rectangle

extends

shape

}//圓形

class

circle

extends

shape

}//新增畫三角形

class

********

extends

shape

}

基本介紹

迪公尺特法則注意事項和細節

原則是盡量使 用合成 聚合的方式,而不是使用繼承

核心思想:

設計模式七大原則

open closed principle ocp 最基礎的原則,對擴充套件開放,對修改關閉強調的是用抽象構建框架,用實現擴充套件細節,可以提高軟體系統的可復用性和可維護性 dependence inversion principle,dip 程式要依賴於抽象介面,不要依賴於具體實現。即面向介面程式...

設計模式 七大原則

懂了設計模式,你就懂了物件導向分析和設計 ooa d 的精要.編寫軟體的過程,面臨 耦合性 內聚性 維護性 可擴充套件性 重用性 靈活性 等各方面的挑戰。設計模式就是為了解決這些問題 程式設計時遵循的原則,各種設計模式的基礎 注意事項和細節 那麼問題來了,如何正確使用繼承?答案 黎克特制替換原則 基...

設計模式七大原則

編寫軟體過程中,程式設計師面臨著來自耦合性,內聚性以及可維護性,可擴充套件性,重用性,靈活性等多方面的挑戰,設計模式是為了讓程式具有更好以下特性 1 重用性 即 相同功能的 不用多次編寫 3 可擴充套件性 即 當需要增加新的功能時,非常的方便,稱為可維護 4 可靠性 即 當我們增加新的功能後,對原來...