按照目的分类:
创建型、结构型、行为型三种
1、创建型模式主要是目的是创建对象(一共有5种):
工厂方法模式(Factory Method)、抽象方法模式(Abstract Factory)、建造者模式(Bulder)、原型模式(Prototype)、单例模式(Singleton)
2、结构型模式主要用于处理类或对象的组合(一共有7种):
适配器模式(Adapter)、桥接模式(Bridge)、组合模式(Composite)、装饰模式(Decorator)、外观模式(Facade)、享元模式(Flyweight)、代理模式(Prxy)
3、行为型模式主要用于描述对类或对象怎样交互和怎样分配职责(一共有11种):
职责链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式
按照范围分类:
类模式、对象模式两种
1、类模式处理类和子类之间的关系,这些关系通过继承建立,在编译时就被确定了,属于静态的;
2、对象模式处理对象间的关系,这些关系在运行时才被确定,属于动态的。