設計模式的七大原則 開閉原則 上

2021-09-27 16:21:49 字數 846 閱讀 9030

開閉原則:當軟體需要變化時,盡量通過擴充套件軟體實體的行為來實現變化,而不是通過修改

有的**來實現變化。

開閉原則**1:(未能遵循開閉原則,存在優化的空間)

/** * 開閉原則**1

*/public class oncg

}/**

* 用於繪圖的類[使用方]

*/class graphiceditor else if (s.m_typte == 2) else if (s.m_typte == 3)

} // 繪製矩形

public void drawrectangle(shape s)

// 繪製圓形

public void drawcircle(shape s)

public void draw********(shape s)

}/**

* shape類,基類

*/class shape

/** * 矩形實體類

*/class rectangle extends shape

}/**

* 圓形實體類

*/class circle extends shape

}/**

* 三角形實體類

*/class ******** extends shape

}

解析:違反了ocp原則,新增乙個新的類,比如三角形,我們需要修改的地方較多;優化方案將使用ocp原則,請看下篇;

設計模式 七大原則 開閉原則

開閉原則,是程式設計中最基礎 最重要的設計原則。乙個軟體實體如類,模組和函式應對外擴充套件開放 對提供方 對修改關閉 對使用方 用抽象構建框架,用實現擴充套件細節。當軟體需要變化時,盡量通過擴充套件軟體實體的行為來實現變化,而不是通過修改已有的 來實現變化。說白了就是增加了新功能,盡量保證以前的使用...

七大原則 開閉原則

開閉原則 open closed principle,ocp 由勃蘭特 梅耶 bertrand meyer 提出,他在 1988 年的著作 物件導向軟體構造 object oriented software construction 中提出 軟體實體應當對擴充套件開放,對修改關閉 software ...

設計模式七大原則之開閉原則

簡介 開閉原則是程式設計過程中最基礎 最重要的原則,前面講到的幾個原則,也都是為了實現開閉原則。那麼他是如何開放,又是如何關閉的呢?例項展示 這是乙個用於繪圖的類 使用方 class graphiceditor else if shape.my type 2 else if shape.my typ...