2019独角兽企业重金招聘Python工程师标准>>> 这个原则最早是由Bertrand Meyer提出,英文的原文是:Software entities should be open for extension,but closed for modification.意思是说,一个软件实体应当对扩展开放,对修改关闭.也就是说,我们在设计一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展,换句话说就是,应当可以在不必修改 源代码的情况下改变这个模块的行为. 满足OCP的设计给系统带来两个无可比拟的优越性. 1.通过扩展已有的软件系统,可以提供新的行为,以满足对软件的新需求,使变化中的软件系统有一定的适应性和灵活性. 2.已有的软件模块,特别是最重要的抽象层模块不能再修改,这就使变化中的软件系统有一定的稳定性和延续性. 例如: 编程模式中的工厂模式的“工厂方法”支持OCP原则 转载于:https://my.oschina.net/wangfree/blog/79429