根据其目的(模式是用来做什么的)可分为创建型,结构型,和行为型三种
1.创建型模式主要用于创建对象
根据根据范围,即模式主要是用于处理类之间关系还是处理对象之间的关系,可分为类模式和对象模式两种
a.类模式处理类和子类之间的关系,这些关系通过继承建立,在编译时刻就被确定下来,是属于静态的。
类:简单工厂和工厂方法
类的创建模式使用继承关系,把类的创建延迟到子类,从而封装了客户端将得到哪些具体类的信息,并且隐藏了这些类的实例是如何被创建和放在一起的。
b.对象模式处理对象间的关系,这些关系在运行时刻变化,更具动态性。
对象:抽象工厂 建造者 原型 单例
把对象的创建过程动态地委派给另一个对象,从而动态地决定客户端将得到哪些具体类的实例,以及这些类的实例是如何被创建和组合在一起的。
2.创建型模式的目的就是封装对象创建的变化。
a.创建型模式(Creational Pattern)对类的实例化过程进行了抽象,能够将软件模块中对象的创建和对象的使用分离。为了使软件的结构更加清晰,外界对于这些对象只需要知道它
们共同的接口,而不清楚其具体的实现细节,使整个系统的设计更加符合单一职责原则。
b.创建型模式在创建什么(What),由谁创建(Who),何时创建(When)等方面都为软件设计者提供了尽可能大的灵活性。
c.创建型模式隐藏了类的实例的创建细节,通过隐藏对象如何被创建和组合在一起达到使整个系统独立的目的。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
创建型模式:
1.简单工厂
2.工厂方法
3.抽象工厂
4.单例模式
5.建造者模式
6.原型模式