要想富先练功,设计模式之六大原则

设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。

使用设计模式的目的:为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编写真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。

设计模式的六大原则是,开发人员必须要掌握的,在开发过程中遵循这些原则,将极大地提升我们的代码质量和开发效率。

下面我们简单回忆一下,这六大原则。如果您没接触过设计模式,那么强烈建议您学习下相关知识。

单一职责:一个类只负责一项职责

开放封闭:对扩展开放,对修改封闭;当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化

里氏替换:子类可以扩展父类的功能,但不能改变父类原有的功能,即使用基类的地方都可以使用子类对象

依赖倒置:高层模块不应该依赖低层模块,二者都应该依赖其抽象。因为相对于细节的多变性,抽象的东西要稳定的多。

迪米特:一个对象应该尽可能少的与其它对象发生相互作用,即低耦合,高内聚。因为类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大

接口隔离:不要对外暴露没有实际意义的接口,一个类对另一个类的依赖应该建立在最小的接口上

附:23种设计模式

转载请注明出处:http://www.toutiao.com/i6447726218933436941/

时间: 2024-08-06 20:17:35

要想富先练功,设计模式之六大原则的相关文章

设计模式的六大原则

设计模式六大原则(1):单一职责原则 定义:不要存在多于一个导致类变更的原因.通俗的说,即一个类只负责一项职责. 问题由来:类T负责两个不同的职责:职责P1,职责P2.当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障. 解决方案:遵循单一职责原则.分别建立两个类T1.T2,使T1完成职责P1功能,T2完成职责P2功能.这样,当修改类T1时,不会使职责P2发生故障风险:同理,当修改T2时,也不会使职责P1发生故障风险. 说到单一职责原则,很多人都会不屑一顾

【设计模式的六大原则】

设计模式的六大原则 1.开闭原则(Open Close Principle) 开闭原则就是说对扩展开放,对修改关闭.在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果.所以一句话概括就是:为了使程序的扩展性好,易于维护和升级.想要达到这样的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点. 2.里氏代换原则(Liskov Substitution Principle) 里氏代换原则(Liskov Substitution Principle LSP)面向对象设计的

关于设计模式的六大原则

目录: 设计模式六大原则(1):单一职责原则 设计模式六大原则(2):里氏替换原则 设计模式六大原则(3):依赖倒置原则 设计模式六大原则(4):接口隔离原则 设计模式六大原则(5):迪米特法则 设计模式六大原则(6):开闭原则 设计模式六大原则(1):单一职责原则 定义:不要存在多于一个导致类变更的原因.通俗的说,即一个类只负责一项职责. 问题由来:类T负责两个不同的职责:职责P1,职责P2.当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障. 解决方案

设计模式之六大原则(转载)

关于设计模式的六大设计原则的资料网上很多,但是很多地方解释地都太过于笼统化,我也找了很多资料来看,发现CSDN上有几篇关于设计模式的六大原则讲述的比较通俗易懂,因此转载过来. 原作者博客链接:http://blog.csdn.net/LoveLion/article/category/738450/7 一.单一职责原则 原文链接:http://blog.csdn.net/lovelion/article/details/7536542 单一职责原则是最简单的面向对象设计原则,它用于控制类的粒度大

设计模式之六大原则——接口隔离原则(ISP)

设计模式之六大原则——接口隔离原则(ISP) 转载于:http://www.cnblogs.com/muzongyan/archive/2010/08/04/1792528.html 接口隔离原则 Interface Segregation Principle    定义: 客户端不应该依赖它不需要的接口 类间的依赖关系应该建立在最小的接口上 我们可以把这两个定义概括为一句话:建立单一接口,不要建立臃肿庞大的接口.再通俗一点讲:接口尽量细化,同时接口中的方法尽量少. 提供给每个模块的都应该是单一

【设计模式】六大原则

设计模式的六大原则: * 开闭原则(Open Close Principle) 开闭原则的意思是:对扩展开放,对修改关闭.在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果.简言之,是为了使程序的扩展性好,易于维护和升级.想到达到这样的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点. * 里氏代换原则(Liskov Substitution Principle) 里氏代换原则是面向对象设计的基本原则之一.里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现

无废话设计模式(0)--设计模式的六大原则

设计模式的六大原则: 1.单一职责原则:对于一个类,应该只有一个引起它变化的原因: 2.里氏替换原则:子类必须能够替换掉他们的父类型: 3.开放封闭原则:程序的对象应该可以扩展,但不应该可以修改: 4.依赖倒转原则:高层模块不应依赖于底层模块,两者都应依赖于抽象:抽象不依赖于集体细节,而细节应该依赖于抽象: 5.合成/聚合复用原则:尽量不要使用类继承,而尽量使用合成/聚合: 6.迪米特法则:如果两个类之间不必直接通信,则这两个类不应该发生直接的相互作用:如果其中一个类需要调用另外一个类的某个方法

《大话设计模式》——六大原则

谈到设计模式,它是骨灰级任务给我们总结的经验,也是我们对面向对象编程学习的深入.而设计模式中的六大原则,则是我们在学习它时要遵循的规则.下面宏观的看一看六大原则的导图吧! 一.导图分析 二.导图分析 1.单一职责:就一个类而言,应该仅有一个引起它变化的原因. 问题由来:类T负责两个不同的职责:职责P1,职责P2.当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障. 解决方案:遵循单一职责原则.分别建立两个类T1.T2,使T1完成职责P1功能,T2完成职责P

设计模式(六大原则之单一职责)

概念:就一个类而言,应该仅有一个引起它变化的原因 描述的意思是每个类都只负责单一的功能,切不可太多,并且一个类应当尽量的把一个功能做到极致.如果一个类承担的职责过多,就等于把这些职责耦合在一起,这种耦合会导致脆弱的设计,即当其中一个职责发生变化时将会影响这个类完成其它职责的功能.以下代码就没有遵守该原则 public class Calculator { public int add() throws Exception{ File file = new File("E:/data.txt&qu