`
terryfeng
  • 浏览: 504084 次
  • 性别: 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课件.ppt

    开放-封闭原则(OCP)由Bertrand Meyer在1988年提出,是软件设计中的一个基本原则。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