您的位置:首页 > 其它

23种设计模式 (一) 创建型模式

2015-03-27 15:20 309 查看
 ===== 创建型模式 =====

1、abstract factory 抽象工厂

抽象工厂模式给几个类似的对象建立一个公共的抽象基类,创建对象的时候可以通过使用基类接口。

            calss  dog  running()

    阿拉斯加 running()  |  哈士奇 running()

优缺点:

分离的具体的类

易于交换产品系列   (哈士奇替换成金毛)

有利于产品的一致性 (都具有相同的功能)

难以添加新接口(需要修改抽象类和所有子类)

用例:

OS或soft的控件风格。

2、factory function 工厂方法

工厂方法是抽象工厂的简化模式,顾名思义是针对单个函数的抽象

3、build   生成器

类似抽象工厂,最终生成一个结果,获取出来,一般由一个导演类拥有

    ​    ​    ​car_builder 

build_door()

build_wheel()

build_engine()  -> get_car()

优点:

隐藏内部结构

构造和代码分开

对构造过程有更好的控制 (因为分步)

4、prototype  原型

拥有一个clone()方法,可以复制自身

优点:

运行时增加删除

改变值指定新对象

用例:

会分裂的对象

5、sigleton  单件

在程序运行期间只存在一个实例的对象

优缺点:

可以受到访问控制

比全局变量更安全
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: