23种设计模式

设计模式分类

创建型模式

  1. 工厂方法模式
  2. 抽象工厂模式
  3. 单例模式
  4. 建造者模式
  5. 原型模式

结构型模式

  1. 适配器模式
  2. 装饰器模式
  3. 代理模式
  4. 外观模式
  5. 桥接模式
  6. 组合模式
  7. 享元模式

行为型模式

  1. 策略模式
  2. 模板方法模式
  3. 观察者模式
  4. 迭代子模式
  5. 责任链模式
  6. 命令模式
  7. 备忘录模式
  8. 状态模式
  9. 访问者模式
  10. 中介者模式
  11. 解释器模式

这里写图片描述

设计模式之间的关系

这里写图片描述

设计模式的六大原则

总原则-开闭原则(Open Close Principle): 允许对功能扩展(开放), 不允许对原有代码修改(关闭)。

  1. 单一职责原则(Single responsibility principle)
    说明:每个类应该实现单一的职责,否则就应该把类拆分。
    目的:类的复杂性降低,可读性提高,可维护性提高。

  2. 里氏替换原则(Liskov Substitution Principle)
    说明:任何基类可以出现的地方,子类一定可以出现。尽量把父类设计成抽象类或接口,让子类继承或实现其方法,子类对父类的方法尽量不要重写和重载。这样子类对象可以替换掉父类对象。
    目的:对实现抽象化的具体步骤的规范。

  3. 依赖倒转原则(Dependence Inversion Principle)
    说明:面向接口编程,依赖于抽象而不依赖于具体。写代码时用到具体类时,不与具体类交互,而与具体类的上层接口交互。
    目的:降低模块间的耦合。

  4. 接口隔离原则(Interface Segregation Principle)
    说明:每个接口中不存在子类用不到却必须实现的方法,如果不然,就要将接口拆分。使用多个隔离的接口,比使用单个接口(多个接口方法集合到一个的接口)要好。
    目的:提高程序设计灵活性。

  5. 迪米特法则(最少知道原则)(Demeter Principle)
    说明:每个类尽量减少对其他类的依赖,这样很容易使得系统的功能模块功能独立,相互之间不存在(或很少有)依赖关系。
    目的:降低类之间的耦合,减少对其他类的依赖。

  6. 合成复用原则(Composite Reuse Principle)
    说明:尽量首先使用合成/聚合的方式,而不是使用继承。
    目的:新的对象可以通过向已有对象委派达到复用已有功能的目的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值