- 3
- 0
- 约5.54千字
- 约 15页
- 2018-11-16 发布于浙江
- 举报
《设计模式06》-构造器
创建型设计模式
5.构造器/生成器方法
回顾工厂方法模式
Client
-fac1: Creator Creator Product
-fac2: Creator
-prod1: Product +FactoryMethod(): Product
-prod2: Product
+CreateAndUse()
ConcreteCreator1 ConcreteCreator2 ProductA ProductB
+FactoryMethod(): Product +FactoryMethod(): Product
return new ProductA return new ProductB
新问题?
工厂方法—适应产品变化,实例化相应产品
创建复杂产品或复合产品呢?
构成复合产品的子产品种类变化
(用工厂方法解决)
构成复合产品的子产品数量变化呢?
构成复合产品的子产品装配过程变化呢?
构成复合产品的算法变化呢?
例
Client 墙 -结束1 -结束2 原料
+Profit() 1 * +Cost()
水泥 砖
红砖 空心砖
使用工厂方法后
墙 -结束-结1束2
Client 原料工厂 原料
+Create()
+Create(in typename) * * +Cost()
+Profit()
Create( Factory myFac) {
myFac.Create(红砖); 水泥 砖
myFac.Create(水泥);
Cover(红砖,水泥);
myFac.Create(红砖);
myFac.Create(红砖);
Cover(水泥,红砖);
红砖 空心砖
}
考虑
红砖的数量变化呢?
有必要知道“水泥”吗?
墙的构建过程采用硬编码,好吗?
目标:将与构建墙的过程独立出去。
去掉具体产品的硬编码
您可能关注的文档
- Transtherm Vintec 酒柜介绍.pdf
- unit10单词a.doc
- Verilog第五章.ppt
- W991S-送样规格书.pdf
- WS喷头两种安装方法-供客户.pdf
- YK-08地面与楼面工程质量预控.pdf
- YK-10装饰工程质量预控.pdf
- YZ-100T原理图.pdf
- §2.3 桥面伸缩缝.pdf
- φ3.33mMEPB盾构全断面砂卵石施工技术.pdf
- 《辐射4》星光休息站大型城堡建设图解.pdf
- 【2013年一级建造师】.pdf
- 【北美购房网】美国房屋检测终极篇,写好报告才是检测工程师最核心的工作.pdf
- 【实用版】一年级上册dtnl.ppt
- 【异乡好居】100 East 53 Street曼哈顿豪华公寓,荣耀启幕释放房价顶端价值.pdf
- 【异乡好居】利物浦2017留学生公寓系列专题第二篇.pdf
- 【异乡好居】利物浦全新中国城,买房子选这里绝对没错!.pdf
- 【异乡好居】墨尔本低价好房Chronicle,买到就是赚.pdf
- 【异乡好居】悉尼买房之马斯觉琪雅拉豪华公寓.pdf
- 【异乡好居】曼彻斯特大学租房之留学生公寓Ladybarn House.pdf
原创力文档

文档评论(0)