设计模式之设计原则
image.png “开一闭” 原则(OCP) 经典力学的基石是牛顿三大定律。 而面向对象的可复用设计 (Object Oriented Design, 或 OOD) 的第一块基石,便是所谓的”开-闭“原则 (Open-Closed Principle, 常缩写为OCP)。 “开-闭 ” 原则讲的是:一个软件实体应当对扩展开放, 对修改关闭。 这一原则最早由 Bertrand Meyer [MEYER88]提出, 英文原文是:Software entities should be open for extension, but closed for modification. 这个原则说的是, 在设计一个模块的时候, 应当使这个模块可以在不被修改的前提下被扩展。 换言之, 应当可以在不必修改源代码的情况下改变这个模块的行为。 所有的软件系统都有一个共同的性质, 即对它们的需求都会随时间的推移而发生变化。 在软件系统面临新的需求时, 系统的设计必须是稳定的。 满足 “开-闭” 原则的设计可以给一个软件系统两个无可比拟的优越性: 通过扩展已有的软件系统, 可以提供新的行为, 以满足对软件的...