设计模式

来源:互联网 发布:软件激活码商城 编辑:程序博客网 时间:2024/05/29 10:46

在1994年,由Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides四人合著出版了一本名为Design Patterns Elements of Reusable Object-Oriented Software(设计模式-可复用的面向对象软件元素)的书,该书首次提到了软件开发过程中设计模式的概念。
四位作者合称GOF(四人帮,Gang of Four),他们所提出的设计模式主要基于以下面向对象设计原则:

  • 对接口编程而不是对实现编程
  • 优先使用组合而不是继承

设计模式一般认为一共有23种,这些模式可以分为三大类:

  • 创建型模式(Creational Patterns)

    工厂模式(Factory Pattern)
    抽象工厂模式(Abstract Factory Pattern)
    单例模式(Singleton Pattern)
    这建造者模式(Builder Pattern)
    原型模式(Prototype Pattern)

  • 结构型模式(Structural Patterns)

    适配器模式(Adapter Pattern)
    桥接模式(Bridge Pattern)
    过滤器模式(Filter Pattern)
    组合模式(Composite Pattern)
    装饰器模式(Decorator Pattern)
    外观模式(Facade Pattern)
    享元模式(Flyweight Pattern)
    代理模式(Proxy Pattern)

  • 行为型模式(Behavioral Patterns)

    责任链模式(Chain of Responsibility Pattern)
    命令模式(Command Pattern)
    解释器模式(Interpreter Pattern)
    迭代器模式(Iterator Pattern)
    中介者模式(Mediator Pattern)
    备忘录模式(Memento Pattern)
    观察者模式(Observer Pattern)
    状态模式(State Pattern)
    空对象模式(Null Object Pattern)
    策略模式(Strategy Pattern)
    模板模式(Template Pattern)
    访问者模式(Visitor Pattern)

这里写图片描述


设计模式六大原则
1. 开闭原则
    对扩展开放,对修改关闭
2.里氏替换原则
    任何基类可以出现的地方,子类一定可以出现
3.依赖倒置原则
    针对接口编程,依赖于抽象而不依赖于具体
4.接口隔离原则
    降低依赖,降低耦合
5.迪米特法则,又称最少知道原则
    一个实体应当尽量少的与其它实体之间发生相互作用,使得系统的模块相对独立
6.合成复用原则
    多使用组合,少使用继承

原创粉丝点击