python设计模式-状态模式

2019-01-01
阅读 9 分钟
2k
这是一个状态图,每个圆圈都是一种状态。很明显,有有25分钱、 没有25分钱、 售出糖果、 糖果售罄四个状态,同时也对应四个动作:投入25分钱,退回25分钱,转动曲柄和发放糖果。

python设计模式-模板方法模式

2018-12-02
阅读 4 分钟
2k
date: 2018-12-02T17:23:56+08:00description: python 设计模式 模板方法模式draft: falseslug: "python-design-pattern-template-pattern"categories: ["development", "python", "设计模式"]tags: ["python", "读书笔记", "设计模式"]

python设计模式-外观模式

2018-11-25
阅读 3 分钟
1.8k
上一篇《python设计模式-适配器模式》介绍了如何将一个类的接口转换成另一个符合期望的接口。这一篇将要介绍需要一个为了简化接口而改变接口的新模式-外观模式(Facade-Pattern)。

python 设计模式-适配器模式

2018-11-03
阅读 2 分钟
2k
问题:假设有一个软件系统,你希望它能在不改变现有代码的前提下和一个新的厂商类库搭配使用,但是这个新厂商所设计出来的接口不同于旧厂商的接口 这个问题和下图的问题类似 美国标准的插头?无法在欧洲标准的插座上使用,通常的做法是什么呢? 添加一个插头适配器,适配器的作用是将欧式插头转换成美式插座,以便于让美...

python 设计模式-命令模式

2018-01-09
阅读 7 分钟
3.7k
命令模式 题目: 现在要做一个智能家居控制遥控器,功能如下图所示。 下图是家电厂商提供的类,接口各有差异,并且以后这种类可能会越来越多。 观察厂商提供的类,你会发现,好多类提供了 on()、off() 方法,除此之外,还有一些方法像 dim()、setTemperature()、setVolumn()、setDirection()。由此我们可以想象,之后还...

python设计模式-单例模式

2017-11-26
阅读 5 分钟
2.5k
问题:现代化的巧克力工厂具备计算机控制的巧克力锅炉。锅炉做的事情就是把巧克力和牛奶融在一起,然后送到下一个阶段,以制成巧克力棒。下边是一个巧克力公司锅炉控制器的代码,仔细观察一下,这段代码有什么问题?

python 设计模式-建造者模式

2017-11-12
阅读 4 分钟
2.5k
问题:在上一篇python设计模式:抽象工厂模式中,我们尝试用抽象工厂模式规范化了 Pizza 原材料的供应以及 Pizza 的创建。但是我们忽略了一个问题,那就是每种 Pizza 的烘焙时间依赖于生面团的厚度和使用的配料,它们所需的时间是不一样的。那这时我们改如何处理呢?

python设计模式-抽象工厂模式

2017-10-28
阅读 6 分钟
4.3k
为了确保每家加盟店都是用高质量的原材料,我们打算建造一加原材料工厂,并将原材料运送到各个加盟店。每个加盟店会对原材料有不同的需求,这里我们就可以用上上一篇介绍的工厂方法模式了。

python设计模式-工厂方法模式

2017-10-15
阅读 8 分钟
4k
但是现在你遇到了一个问题,你的 pizza 店需要更多的 pizza,所以现在你需要增加一些代码,来决定适合的 pizza 类型,然后再制造这个 pizza:

python设计模式-观察者模式

2017-09-24
阅读 7 分钟
3.8k
题目:现在你有一个数字,默认格式化程序是以十进制格式展示此数值,但需要提供一个功能,这个程序要支持添加/注册更多的格式化程序(比如:添加一个十六进制格式化程序和一个二进制格式化程序)。每次数值更新时,已注册的程序就会收到通知,并显示更新后的值。