`

开闭原则(面向对象设计原则之一)

阅读更多

面向对象的设计原则:

第一 : 开闭原则

第二 :里氏代换原则

第三 :依赖倒转原则

第四 :迪米特法则

       开闭原则:一个系统要对扩展开放,而对修改关闭。这里的所指的意思就是在不修改以前已经写好的代码或者尽量不改的情况下来扩展系统的功能。

      如何做到开闭原则:

       第一 : 我们就要对系统进行分析,抽象出最本质的东西。抽象的越深,系统的可扩展性就越好。在当今主流软件开发平台(J2EE&.NET)中都提供了具体的语法来支持抽象。

      第二 :对可变性的封装。要想做到做尽量小修改来扩展系统,我们就要发现哪些东西是可变的,那些东西是不会变的,或者也可以说:我们可以让什么东西发生变化,而哪些东西不变化。我们做的就是要对这些变化的东西进行封装,不要把它们分散到代码中,并且我们还尽量不要把几种不同的可变性混合在一起。

分享到:
评论

相关推荐

    Java面向对象程序设计杨晓燕面向对象基本原则和模式.pptx

    开放-封闭原则 所谓"开放-封闭原则"(Open-Closed Principle),也称"开-闭原则",就是让设计对扩展开放,对修改关闭。也就是说,不允许更改的是系统的抽象层,而允许更改的是系统的实现层。高层模块不应该依赖低层...

    深入浅出面向对象的分析与设计 完整版 PDF Head First Object-Oriented Design and Analysis.part3

     使用开闭原则(Open—C10 sed Principle)与单一责任原则(Single—Responsibility Principle)提升程序的重利用性。  学习如何将OO原则、设计模式及各种开发方法通通整合到OOA&D项目的生命周期里。  运用UML、...

    深入浅出面向对象的分析与设计 完整版 PDF Head First Object-Oriented Design and Analysis.part2

     使用开闭原则(Open—C10 sed Principle)与单一责任原则(Single—Responsibility Principle)提升程序的重利用性。  学习如何将OO原则、设计模式及各种开发方法通通整合到OOA&D项目的生命周期里。  运用UML、...

    深入浅出面向对象的分析与设计 完整版 PDF Head First Object-Oriented Design and Analysis.part4

     使用开闭原则(Open—C10 sed Principle)与单一责任原则(Single—Responsibility Principle)提升程序的重利用性。  学习如何将OO原则、设计模式及各种开发方法通通整合到OOA&D项目的生命周期里。  运用UML、...

    24种设计模式介绍与6大设计原则

    里氏代换原则(Liskov Substitution Principle LSP)面向对象设计的基本原则之一。 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。 LSP是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能...

    类的设计原则

    开闭原则Softwareentities(classes,modules,function,etc.)shouldbeopenforextension,...开闭原则是判断面向对象设计是否正确的最基本的原理之一。根据开闭原则,在设计一个软件系统模块(类,方法)的时

    深入浅出面向对象的分析与设计 完整版 PDF Head First Object-Oriented Design and Analysis.part1

     使用开闭原则(Open—C10 sed Principle)与单一责任原则(Single—Responsibility Principle)提升程序的重利用性。  学习如何将OO原则、设计模式及各种开发方法通通整合到OOA&D项目的生命周期里。  运用UML、...

    七大原则&&六大关系

    开-闭原则(Open-Closed Principle, OCP):一个软件实体应当对扩展开发,对修改关闭.说的是,再设计一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展.换言之,应当可以在不必修改源代码的情况下改变这个模块的...

    设计模式Demo

    里氏代换原则(Liskov Substitution Principle LSP)面向对象设计的基本原则之一。 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。 LSP是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能...

    design-pattern-java.pdf

    从招式与内功谈起——设计模式概述(一) 从招式与内功谈起——设计模式概述(二) 从招式与内功谈起——设计模式概述(三) 面向对象设计原则 面向对象设计原则之单一职责原则 面向对象设计原则之开闭原则 ...

    设计模式:创建型之原型(深浅拷贝)、单例(饿汉式与懒汉式),三大工厂模式 结构型之适配器模式,代理模式(三大代理)

    单例模式是保证一个类仅有...代理模式实现起来简单,易于扩展和维护,符合面向对象设计原则中的开闭原则。 缺点: 代理模式可能会引入额外的复杂性和间接性,增加程序设计和维护的难度。 对象代理可能会降低系统性能

    design_pattern:关于设计模式的理解

    2、里氏代换原则(Liskov Substitution Principle)里氏代换原则是面向对象设计的基本原则之一。 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。LSP 是继承复用的基石,只有当派生类可以替换掉基类...

    酒店客房管理系统源码java-design_model:23种设计模式学习记录

    LSP)面向对象设计的基本原则之一。 里氏代换原则中说,任何基类(父类)可以出现的地方,子类一定可以出现。 LSP是继承复用的基石,只有当衍生类可以替换掉基类(父类),软件单位的功能不受到影响时,基类(父类)才能...

    AndroidDesignPattern:android原始设计模式-android

    AndroidDesignPattern针对《 Android原始码设计模式解析与实战》(第2版)这本书的的读书笔记面向对象6种设计原则1.单一职责原则一个类应该职能单一。2.开闭原则(开闭)一个类应该对扩展是开放的,对修改是关闭的。...

    浅析php单例模式

    本系列文章来总结一下设计模式在PHP中的应用,这是第一篇创建型模式之单例模式。 一、设计模式简介 首先我们来认识一下什么是设计模式: 设计模式是一套被反复使用、容易被他人...开闭原则:模块应对扩展开放,而对修

    validnumberleetcode自动机-coderjia-to-architect:JiA同学的代码人生,各种优秀语言、框架、中间件、神

    面向对象设计原则 开闭原则 里氏替换原则 依赖倒置原则 单一职责原则 接口隔离原则 迪米特法则 合成复用原则 创建模式 工厂方法模式 抽象工厂模式 单例模式 建造者模式 原型模式 结构模式 适配器模式 装饰器模式 ...

    编程新手真言......

    9.3 面向对象设计 204 9.4 泛型开发与初级StdC库 204 第10章 数据逻辑与STL库 204 10.1 仿函数 204 10.2 iterater 204 10.3 adapter 205 第11章 高级代码逻辑与LOKI库 205 11.1 typelist 205 11.2 traits 206 11.2 ...

    Spring反射+策略模式Demo

    也违反了面向对象的开闭原则。那么我们有什么好的解决方式呢?今次,则用反射+策略模式来重构一下代码,使之更加灵活。 如果有代码更好的优化方式,请下方留言。 码云:Demo地址 二、不使用反射的策略模式 抽象策略...

Global site tag (gtag.js) - Google Analytics