《大话设计模式》解读09-建造者模式

上篇文章,介绍了《大话设计模式》的第12章——外观模式

本篇,来介绍《大话设计模式》的第13章——建造者模式。并通过python代码实现示例代码的功能。

1 建造者模式

建造者模式(Builder):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。

建造者模式的类图如下:

  • Builder:抽象建造类,定义建造一个产品所需要必要部件。
  • ConcreateBuilder:具体建造类,继承于抽象建造类,对抽象建造类中定义的接口进行实现,以实现个性化特征的产品构建。
  • Product:具体产品,具体建造类依赖于具体产品,即建造要根据产品功能来进行建造。
  • Director:指挥者类,控制建造的过程,确保建造过程中必要部件都执行了建造。

2 实例

背景:书中小故事,小菜和大鸟去饭店吃饭,分别点的炒面和炒饭,小菜的炒面吃着还不错,大鸟的炒饭味道不够,蛋也少。大鸟尝了一下炒面,味道不错,就又要了份炒面,结果,这炒面没放盐。。。回去的路上,大鸟感慨,肯德基、麦当劳能在中国发展的很好,大概是因为其制作过程规范严格,而中国的小吃,比如“鱼香肉丝”,不同的店可以吃出各种不同的口味。

启发:小吃店吃的味道怎么样,依赖于厨师。联想依赖倒转原则:抽象不应该依赖细节,细节应该依赖于抽象,由于吃的饭菜要依赖于厨师这样的细节,饭客就很被动。而像KFC那样,制作流程进行抽象,具体放什么配料、烤多长时间等细节依赖于这个抽象。

题目:根据流程的抽象原理,用代码的形式来实现用程序画不同体型的小人。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值