|
知识路径: > 嵌入式系统的项目开发与维护知识 > 面向对象分析与设计方法 > 设计模式 >
|
相关知识点:7个
|
|
|
|
创建型模式与对象的创建有关,抽象了实例化过程,它们帮助一个系统独立于如何创建、组合和表示它的那些对象。一个类创建型模式使用继承改变被实例化的类,而一个对象创建型模式将实例化委托给另一个对象。
|
|
|
创建型模式包括面向类和面向对象两种。Factory Method(工厂方法)定义一个用于创建对象的接口,让子类决定实例化哪一个类。Abstract Factory(抽象工厂)提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。Builder(生成器)将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。Factory Method使一个类的实例化延迟到其子类。Prototype(原型)用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。Singleton(单例)模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。
|
|
|
|
|
(1)意图。提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。
|
|
|
|
|
|
|
.AbstractFactory声明一个创建抽象产品对象的操作接口。
|
|
|
.ConcreteFactory实现创建具体产品对象的操作。
|
|
|
.AbstractProduct为一类产品对象声明一个接口。
|
|
|
.ConcreteProduct定义一个将被相应的具体工厂创建的产品对象,实现AbstractProduct接口。
|
|
|
.Client仅使用由AbstractFactory和AbstractProduct类声明的接口。
|
|
|
(3)适用性。Abstract Factory模式适用于:
|
|
|
|
|
.当要强调一系列相关的产品对象的设计以便进行联合使用时。
|
|
|
.当提供一个产品类库,只想显示它们的接口而不是实现时。
|
|
|
|
(1)意图。保证一个类仅有一个实例,并提供一个访问它的全局访问点。
|
|
|
|
|
|
其中:Singleton指定一个Instance操作,允许客户访问它的唯一实例,Instance是一个类操作;可能负责创建它自己的唯一实例。
|
|
|
|
.当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时。
|
|
|
.当这个唯一实例应该是通过子类化可扩展的,并且客户无须更改代码就能使用一个扩展的实例时。
|
|
|