`
terryfeng
  • 浏览: 507388 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

开放-封闭原则(OCP)

阅读更多

1. 不能修改该,但可以扩展的思想就是开闭原则

2. 软件实体(类、模块、函数等等)应该可以扩展,但是不可以修改。也就是对扩展开放,对更改关闭

3. 在面对需求的变更却可以保持相对稳定,从而使得系统可以在第一个版本以后不断推出先的版本

4. 多扩展,少修改。

5. 开闭原则的意思就是说,你设计的时候,时刻要考虑,尽量让这个类是足够好,写好了就不要去修改了,如果新需求来了,我们增加一些类就可以了,原来的代码能不动则不动。

6. 无论模块是多么的封闭,都会存在一些无法对之封闭的变化。既然不可能完全封闭,设计人员必须对于他设计的模块应该对那些变化封闭做出选择,他必须先猜测出最有可能发生的变化种类,然后构造抽象来隔离那些变化。

7. 在我们最初编写代码时,假设变化不会发生。当变化发生时,我们就创建抽象来隔离以后发生的同类变化

8. 面对需求, 对程序的改动是通过增加新代码进行的,而不是更改现有的代码。

9. 在开发的工作进展不久就知道可能发生的变化,查明可能发生的变化所等待的时间越长,要创建正确的抽象就越困难。

10.开放-封闭原则是面向对象设计的核心所在,遵循这个原则可以带来面向对象技术所声称的巨大好处,也就是可维护、可扩展、可复用、灵活性好。开发人员应该仅对程序中呈现出频繁变化的那些部分作出抽象,而对于应用程序中的每个部分都可以的进行抽象不是好办法,拒绝不成熟的抽象和抽象本身一样重要

     书中内容讲的很有意思,很受读。

分享到:
评论

相关推荐

    PHP面向对象五大原则之开放-封闭原则(OCP)详解

    开放-封闭原则(Open-Closed Principle,OCP)是面向对象设计(OOD)的五大原则之一,由Bertrand Meyer在1998年提出。该原则旨在指导软件系统的设计,使其能够容易地扩展新功能,同时在扩展时不影响现有代码的稳定性...

    ocp原则

    #### 开放-封闭原则(OCP)概览 开放-封闭原则(Open-Closed Principle, OCP)是软件工程中一个至关重要的设计原则,它由Bertrand Meyer于1988年提出,并由Robert C. Martin进一步阐述和发展。OCP的核心理念在于确保...

    面向对象设计原则(SRP,OCP,LSP,DIP,ISP)

    面向对象 设计原则 单一职责原则--SRP 开放封闭原则--OCP Liskov替换原则--LSP 依赖倒置原则--DIP 接口隔离原则--ISP

    第二十六讲:基础一开放封闭原则

    在软件设计领域,开放封闭原则(Open-Closed Principle,OCP)是面向对象设计的五大原则之一,由Bertrand Meyer在1988年提出。这一原则旨在指导我们如何构建可扩展且易于维护的软件系统。简单来说,OCP 告诉我们,...

    设计模式之开放封闭原则

    开放封闭原则(Open-Closed Principle,OCP)由Bertrand Meyer在1988年提出,是面向对象设计的五大原则(SOLID)之一。该原则规定,软件实体(如类、模块或函数)应当对扩展开放,对修改封闭。这意味着当需求变化时...

    6开放封闭原则-MOOC课程内容.pdf

    开闭原则(Open-Closed Principle,OCP)是面向对象设计原则中的一个核心原则,由Bertrand Meyer提出。它强调软件实体(类、模块、函数等)应当对扩展开放,但对修改封闭。这意味着软件系统的设计应当允许在不修改...

    浅谈C#设计模式之开放封闭原则

    答案是在程序设计的时候使用开放封闭原则。   但是设计的同时,绝对对修改的关闭是不可能的,无论模块是多么的封闭,都存在一些无法对之封闭的变化,既然不可以完全的封闭,设计人员必须对他设计的模块应该对哪种...

    java设计模式 pdf

    本篇文章将详细介绍几种常见的Java设计模式及其背后的原理,包括单一职责原则(SRP)、开放-封闭原则(OCP)、里氏替换原则(LSP)、依赖倒置原则(DIP)等。 #### 单一职责原则(SRP) **定义**:单一职责原则...

    面型对象设计原则——开闭原则(OCP)的Demo+静态结构图

    简单来说,OCP 告诉我们,软件实体(如类、模块或函数)应当对扩展开放,对修改关闭。 在C#中,OCP 的实现通常涉及接口、抽象类和多态等概念。通过使用这些工具,我们可以确保代码在添加新功能时无需改动原有代码,...

    软件可扩展性实践.ppt

    Bertrand Meyer在1988年提出的开放-封闭原则(OCP)是指导软件设计的重要原则,它提倡软件设计应做到“对于扩展是开放的,对于更改是封闭的”。 开放-封闭原则的两个核心原则是: 1. “对于扩展是开放的”:意味着...

    用 Objective-C 实现《大话设计模式》书中的例子,并用一些 Objective-C 的特性对例子的实现加以优化

    开放-封闭原则(OCP),是说软件实体(类、模块、函数等等)应该可以拓展,但是不可修改。 依赖倒转原则(DIP),A. 高层模块不应该依赖低层模块,两个都应该依赖抽象。B. 抽象不应该依赖细节,细节应该依赖抽象。 ...

    现代软件开发讲座

    其中,**开放-封闭原则 (OCP)** 是最为重要的原则之一。它提倡软件实体(如类、模块、函数等)应当对扩展开放,对修改关闭。换句话说,应该能够轻松地增加新的功能,而不必修改现有的代码。这有助于减少引入新错误...

    面向对象设计原则(整理)

    本文将详细介绍五个核心的设计原则:单一职责原则(SRP)、开放-封闭原则(OCP)、Liskov替换原则(LSP)、依赖倒置原则(DIP)和接口分离原则(ISP),并探讨它们的应用场景和价值。 #### 1. 单一职责原则(SRP) ...

    也有面向对象设计原则.

    #### 原则3:开放-封闭原则(OCP) **开放-封闭原则** - OCP指出软件实体(如类、模块、函数等)应该对扩展开放,对修改封闭。这意味着实体应该易于扩展而无需修改现有代码。 **OCP示例** - 通过实例解释了...

    OCP 1Z0-053讲解视频.zip

    通过观看这些视频,学习者将能够深入理解Oracle 11g数据库的高级特性,掌握日常管理和故障排查技巧,以满足OCP认证考试的要求,并在实际工作中灵活应用开闭原则。 总的来说,"OCP 1Z0-053讲解视频.zip"提供了全面的...

    技术架构视图-设计原则与模式

    而包的设计原则则包括发布与复用等价原则、共同封闭原则、共同复用原则、无循环的依赖原则、稳定的依赖原则以及稳定的抽象原则。这些原则共同作用,帮助开发者构建出既满足当前需求又易于未来维护和扩展的高质量软件...

Global site tag (gtag.js) - Google Analytics