設計模式之美06 開閉原則

2021-10-08 18:40:57 字數 1354 閱讀 3127

開閉原則: 對修改關閉, 對拓展開放

1.如何理解「對擴充套件開放、對修改關閉」?

新增乙個新的功能,應該是通過在已有**基礎上擴充套件**(新增模組、類、方法、屬性等),而非修改已有**(修改模組、類、方法、屬性等)的方式來完成。關於定義,我們有兩點要注意。第一點是,開閉原則並不是說完全杜絕修改,而是以最小的修改**的代價來完成新功能的開發。第二點是,同樣的**改動,在粗**粒度下,可能被認定為「修改」;在細**粒度下,可能又被認定為「擴充套件」。
2.如何做到「對擴充套件開放、修改關閉」?

我們要時刻具備擴充套件意識、抽象意識、封裝意識。在寫**的時候,我們要多花點時間思考一下,這段**未來可能有哪些需求變更,如何設計**結構,事先留好擴充套件點,以便在未來需求變更的時候,在不改動**整體結構、做到最小**改動的情況下,將新的**靈活地插入到

擴充套件點上。

public

class

alert

public

void

check

(apistatinfo apistatinfo)}}

public

class

apistatinfo

public

abstract

class

alerthandler

public

abstract

void

check

(apistatinfo apistatinfo);}

public

class

tpsalerthandler

extends

alerthandler

@override

public

void

check

(apistatinfo apistatinfo)}}

public

class

erroralerthandler

extends

alerthandler

@override

public

void

check

(apistatinfo apistatinfo)}}

public

class

public alert getalert()

// 餓漢式單例

private

static

new();

private()

public()

}public

class

demo

}

設計模式原則之開閉原則

定義 乙個軟體實體如類 模組和函式應該對擴充套件開放,對修改關閉。問題由來 在軟體的生命週期內,因為變化 公升級和維護等原因需要對軟體原有 進行修改時,可能會給舊 中引入錯誤,也可能會使我們不得不對整個功能進行重構,並且需要原有 經過重新測試。解決方案 當軟體需要變化時,盡量通過擴充套件軟體實體的行...

設計模式原則之開閉原則

對擴充套件開放,對修改關閉。軟體功能擴充套件變化 用抽象構建框架,用實現擴充套件細節。程式設計中,遵循其它原則以及使用設計模式的目的就是遵循開閉則。程式設計中最基礎,最重要的設計原則。傳介面 public class kaibiyuanze 圖形基類 class shape 設定圖形為矩形的類 cl...

設計模式之開閉原則

open closed principle軟體設計中的 開 閉原則 這個原則最早是由bertrand meyer提出,英文的原文是 software entities should be open for extension,but closed for modification.意思是說,乙個軟體...