面向对象:开放-封闭法则(OCP)
介绍一下开放-封闭法则(OCP)。(下面内容来自网络文档)■开放-封闭法则认为我们应该试图去设计出永远也不需要改变的模块。
■我们可以添加新代码来扩展系统的行为。我们不能对已有的代码进行修改。■符合OCP的模块需满足两个标准: ▲可扩展,即“对扩展是开放的”(Open For Extension)-模块的行为可以被扩展,以需要满足新的需求。 ▲不可更改,即“对更改是封闭的”(Closed for Modification)-模块的源代码是不允许进行改动的。■我们能如何去做呢?面向对象的几大特征综合运用。 ▲抽象(Abstraction) ▲多态(Polymorphism) ▲继承(Inheritance) ▲接口(Interface) ■一个软件系统的所有模块不可能都满足OCP,但是我们应该努力最小化这些不满足OCP的模块数量。■ 开放-封闭法则是OO设计的真正核心。 ■ 符合该法则便意味着最高等级的复用性(reusability)和可维护性(maintainability)。
要高质量开发项目时,开放-封闭原则个人感觉是非常重要的,特别是在原型开发模式中,对后期开发或维护都能大大降低学习门槛,降低学习成本,也就最终降低了开发维护成本。
版权声明:本文为博主原创文章,未经博主允许不得转载。
页:
[1]