builder 模式

构建者模式 是简化用户的过度参与才能一个穿件对象,这样对象的创建细节用户不用知道,可以抽象出一类产品的创建。

 

························································································································

场景描述:以鱼、青菜为材料做一道菜,厨师可用“煎炒烹炸”多种烹饪方式来做这道菜,可以得到“水煮鱼”、“红烧鱼”、“炸鱼条”等多种菜肴

在这个场景中:

部件为“鱼”、“青菜”

构建算法为“煎炒烹炸”不同的烹饪方式

生成对象为“菜肴”

不同的烹饪方式对应着不同的菜肴表现

不同的“鱼”(部件表现),青花鱼、鲤鱼等,和鱼或青菜的数量(部件数目),并不影响到最终的菜肴类型

····························································································································

 

builder 模式中让用户( 食客)不直接去生产对象(烹饪),而是把自己的诉求告诉director(在大堂经理那里点菜)。director决定由哪个builder来生产对象组件。然后由director控制组价的具体安装步骤【当然现实中的大堂经理会直接高速厨师直接烹饪出哪道菜,没有组装的这个过程】不同的厨师手里有相同的原料,但是烹饪手法不一样,做出来的具体菜肴也不一样。

 

可以想象客户点的是一桌子菜,凉菜,热汤,主材,甜点。 builder是一个厨房的整体,高速厨房首先生产凉菜,再做热汤,再做主菜,再做甜点。厨房里面的厨师负责这些菜的烹饪。

 

构建者模式中对象的创建过程一般极其复杂,可能需要通过一系列的运算,但是创建过程又可以抽象出相同的组件及装配过程的时候。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值