對修改關閉
軟體實體(類,模組,方法等)應該是可以擴充套件的,但是是不可修改的(為了使程式的擴充套件性好,易於維護和公升級)
滿足ocp軟體的優點
其它important
原始設計**
class
graphiceditor
public
void
drawcircle
(circle r)
public
void
drawrectangle
(rectangle r)
}class
shape
class
rectangle
extends
shape
}class
circle
extends
shape
}
how to redesign to satisfy ocp?
繼承多型
重新設計的**
class
graphiceditor
}class
shape
class
rectangle
extends
shape
}class
circle
extends
shape
}class
cubic
extends
shape
}
reference:software architecture and design patterns class(sk) of neu software college
物件導向設計原則 開放封閉原則 OCP
顧 名思義,既開放又封閉,對擴充套件是開放的,對更改是封閉的!擴充套件即擴充套件現行的模組,當我們軟體的實際應用發生改變時,出現新的需求,就需要我們對模組進行擴充套件,使其能夠滿足新的需求!更改封閉即是在我們對模組進行擴充套件時,勿需對源有程式 和dll進行修改或重新編譯檔案!這個原則對我們在設計類...
設計模式之開放封閉原則
親愛的博友們,感謝來到darren的部落格 最近一直很忙,今天抽空開了一下開放封閉原則,再這裡和各位分享一下學習心得 開放封閉原則 軟體實體 類,模組,函式 等等,對於擴充套件是開放的,對於修改是封閉的。對於程式設計而言,怎麼的設計才能面對需求的改變卻可以保持相對的穩定,從而可以使得系統可以再第乙個...
設計模式之開放封閉原則
public inte ce ibankprocess public class depositprocess ibankprocess public class withdrawprocess ibankprocess public class transferprocess ibankproce...