设计模式第一篇

149 阅读2分钟

设计模式--Design Model

设计模式是一套被多人只晓得,反复使用的,经过分类编目的,代码设计经验的总结。

个人理解:简单来说,设计模式就是具有一定的代码规范的前人总结的经验,被后人们广泛使用。

目的:使用设计模式是为了可重用代码,让代码更容易地被他人理解并且保证代码的可靠性。

三大类型

  • 创建型
  • 结构型
  • 行为型

七大原则

  • 开闭原则:对修改关闭,对扩展开放

  • 里氏替换原则:在任何引用对象基类的地方都可以自由的调用其子类对象

  • 依赖倒置原则:抽象不应该依赖于具体类,而具体类应该依赖于抽象

  • 单一职责原则:一个类尽可能只负责一个功能领域中的职责,或者说只有一个因其他变化的原因

  • 迪米特法则:也称最少知道原则,一个软件实体尽可能少的与其他实体发生相互作用

  • 接口隔离原则:使用多个专门的接口,而不是使用单一的接口,即可用户端不应该依赖于那些它不需要的接口

  • 合成复用原则:优先使用已有的类进行合成(组合/聚合)使用,不能解决问题在考虑继承,因为继承会破坏类的封装性。

23种设计模式外加简单工厂

创建型

  • 简单工厂模式(Simple Factory Pattern)

  • 工厂方法模式(Factory Method Pattern)

  • 抽象工厂模式(Abstract Factory Pattern)

  • 单例模式(Singleton Pattern)

  • 生成器模式(Builder Pattern)

  • 原型模式(Prototype Pattern)

简单工厂模式不属于23种设计模式

结构型

  • 适配器模式(Adapter Pattern)

  • 桥接模式(Bridge Pattern)

  • 组合模式(Composite Pattern)

  • 装饰模式(Decorator Pattern)

  • 外观模式(Façade Pattern)

  • 享元模式(Flyweight Pattern)

  • 代理模式(Proxy Pattern)

行为型

  • 解释器(Interpreter )

  • 模板方法(Template)

  • 责任链(Chain of Responsibility)

  • 命令(Command)

  • 迭代器(Iterator)

  • 中介者(Mediator)

  • 备忘录(Memento)

  • 观察者(Observer)

  • 状态模式(Statue )

  • 策略模式(Strategy)

  • 访问者模式(Visitor)