一、OCP 开放封闭原则(Open Closed Principle)
Software entitied(classes,modules,functions,etc.) should be open for extension,but colosed for modification.
软件实体应当对扩展开放,对修改关闭,即软件实体应当在不修改的前提下扩展。
Open for extension:当新需求出现的时候,可以通过扩展现有模型达到目的。
Close for modification:对已有的二进制代码,如dll,则不允许做任何修改。
二、使用Template Method实现OCP
Code
public abstract class Policy
{
private int[] i ={ 1, 1234, 1234, 1234, 132 };
public bool Sort()
{
SortImp();
}
protected virtual bool SortImp()
{