设计模式(对象创建)——创建者模式
来源:互联网 发布:淘宝宝贝标题可以改吗 编辑:程序博客网 时间:2024/05/17 18:15
创建者模式:使用多个简单的对象一步步构建成一个复杂的对象。
场景还原(兰州拉面):
某天去吃兰州拉面,他们有不同的套餐,套餐里包含的种类是一样的,都有一碗拉面,一份泡菜,一杯饮料。但是不同的套餐里这3样又都不是全部一样的,也许分量和品质有差别。此时我们就可以用建造者模式。
客户根据套餐不同,跟收银员点了一份A套餐的拉面,另一名客户同时又点了一份B套餐的拉面。
这时收银员把这两个单子转交给后台,其实也就是厨房,厨师看到这两个单子的不同而煮不同的拉面,然后返回给服务员,服务员分发拉面给客户!
UML类图阐述:
建造者模式的结构中引入了一个指挥者类Director,该类的作用主要有两个:一方面它隔离了客户与生产过程;另一方面它负责控制产品的生成过程。指挥者针对抽象建造者编程,客户端只需要知道具体建造者的类型,即可通过指挥者类调用建造者的相关方法,返回一个完整的产品对象。
在客户端代码中,无须关心产品对象的具体组装过程,只需确定具体建造者的类型即可,建造者模式将复杂对象的构建与对象的表现分离开来,这样使得同样的构建过程可以创建出不同的表现。
模式结构:
- Builder:给出一个抽象接口,以规范产品对象的各个组成成分的建造。
- Concrete Builder:与应用程序紧密相连的类,在应用程序调用下创建产品实例。
- Director:担任这个角色的类调用具体建造者角色以创建产品对象。
- Product:产品角色
更多C++示例代码,请移步到本人的github。
设计模式,祝愿你把代码写成艺术。
6/20/2017 11:04:12 AM
阅读全文
0 0
- 设计模式(对象创建)——创建者模式
- java语言实现创建型设计模式—创建者模式
- 浅谈设计模式——创建者模式
- 设计模式实现——创建者模式
- 【设计模式】—— 创建者模式Builder
- 设计模式笔记——创建者模式
- JAVA设计模式——创建者模式(builder)
- 设计模式(五)创建者模式(Builder)-创建型
- Scala设计模式Part I. 创建模式——2.创建者模式
- 设计模式--创建者模式
- 设计模式-创建者模式
- <漫谈设计模式>======对象创建型模式之创建者模式
- 设计模式--创建型- Builder(生成器/创建者)
- (创建型模式四)创建者模式
- 设计模式学习笔记——创建者模式
- 设计模式学习笔记——创建者模式
- 设计模式 (四)创建者模式(Builder)
- 设计模式 (四)创建者模式(Builder)
- Genymotion报错:unable to connect to the virtual device
- 什么是DevOps工程师?
- 声明l集合为什么常用List list=new ArrayList()
- PHP使用数组实现堆栈和队列
- CSS使用技巧
- 设计模式(对象创建)——创建者模式
- Ubuntu 16.04 用户登录界面死循环问题的解决
- 【调试】jieba结巴分词功能在python 3上运行代码
- 人际关系的本质
- mysqldump导出数据库
- kotlin初接触
- 安装zookeeper出现java.net.NoRouteToHostException: 没有到主机的路由
- Navicat for MySQL注册教程
- 设计模式之MVC模式