小猿开始了设计模式的学习之路。

首先学习了创建型的设计模式,就拿出来现学现卖了。

小猿想用一个现实生活中的例子来做说明,分别比较五个设计模式,理论的东西请自行参阅《设计模式》。

实例:小猿开了家(bai)超(ri)市(meng),要进点汉堡来卖,于是搜到了五家汉堡厂,小猿决定都实地考察一下,再决定买哪家的。

 

小猿先来到了第一家——Abstract Factory汉堡厂。

厂长一看小猿就是大户,热情的介绍起他们的情况,没办法,颜值高一看就不像屌丝。

厂长:我们厂就能生产两种汉堡,巨无霸和巨小霸。但是两种汉堡都分有机的和无机的,有机的是有机分厂生产出来的,无机的是无机分厂生产出来的。

小猿:可以生产面饼是有机的,里面的蔬菜和肉是无机的嘛(小猿有做黑心商人的潜质)。

厂长:可以是可以,但是也只能生产巨无霸和巨小霸这两种型号,而且还得给你新建个无机混有机的分厂,这厂房费你可以得付奥!

小猿:那你们能生产巨中霸么?

厂长:能啊,你要是想要的话,有机和无机的巨中霸都能加,这个不要建分厂,只要我增加这一种型号,各个分厂都能跟着加上。

小猿:好吧,那我再考虑考虑,我就喜欢无机混有机的巨中霸。

小猿总结第一家Abstract Factory汉堡厂的特点,总厂规定好汉堡的型号,可以根据材质的不同下设不同的分厂,分厂要遵循总厂规定好的型号生产。要想增加新型号,必须从总厂增加新型号,各分厂遵循。如果想增加不同材质的汉堡,就需要增加新的分厂。

 

小猿去了第二家——Builder汉堡厂。

这个汉堡厂的厂长在一个展示厅接待了小猿,展示厅里摆了各种各样的面饼、肉饼、蔬菜和沙拉。

小猿:厂长,这些都是你家生产的么?

厂长:对啊,你看看,看中哪个就和我讲,我给你下订单。

小猿:你们厂房不在这里么?我想去看看你们厂房。

厂长:我们厂有规定的,接待这块和生产是分开的,不能带客人去厂房,都是客人在我们这里下了订单,我们把订单发给厂房,过几天再找厂房取货。

小猿:哦,这样子啊,那你们分厂是怎么生产汉堡的啊?

厂长:我们这里是不清楚厂房生产那块的情况的,但是我偷偷给你讲,也是我从生产那块打听来的,他们那块管理业很正规,有专门生产面饼的分厂,有专门肉饼的分厂等等。

小猿:那我还能定制汉堡?

厂长:可以啊,你想定制什么样的。

小猿:无机混有机的巨中霸。

厂长:可以根据你的配料要求给你专门建个分厂,配料当然是从这些里面选,然后可以下订单。

小猿:那比如你的肉饼我想换成有机的肉饼,可以么?

厂长:可以啊,我会和给你新建的分厂说,肉饼改成有机的。

小猿:是不是我想单订面饼都可以!

厂长:当然可以啊,我们现在就有只生产面饼的分厂。

小猿:啊,让我再想想,研究研究配料。。

小猿总结第二家Builder汉堡厂的特点,接待和生产是分开的,客户看不到生产过程,只能下订单,过段时间直接来取,内部生产是生产各个部分然后组装起来的。想定制一种产品,需要选择要哪部分材料,然后新建分厂。如果想要增加材料种类,就需要在所有分厂遵循的材料表里面增加,增加之后,各个分厂也可以根据自己需要增加新材料。

 

小猿又来到第三家——Factory Method汉堡厂

小猿发现这家工厂就是个办公室。

小猿:厂长,你们这里怎么也没有展示的汉堡也没有厂房啊。

厂长:来来来,给你看,我们这里有清单。

小猿拿来一看,还是那两种:巨无霸,巨小霸。

小猿:我能要巨中霸么?

厂长:能啊,你想要我就给你加,但是得新建分厂。

小猿:那你们分厂是怎么生产汉堡的?

厂长:那我哪知道啊,我们总厂管不了他们怎么生产,都是我们下任务,他们就做,做出来就行。你想要啥样的,我下任务,看他们敢不敢不做出来。

小猿:别别别,我再考虑考虑的。

总结第三家Factory Method汉堡厂,就好像一个空手套白狼的资产家,资产家说,我能做A、B、C,但其实资产家做不出来,都是挥着鞭子让小奴奴去做A、B、C。

 

小猿腿已快走断,总算来到了第四家——Prototype汉堡厂

小猿:厂长,你们家都生产什么样的汉堡。

厂长:我们家就生产两种,巨无霸和巨中霸,我家的流水线可都是进口的,每个汉堡大小、重量都一样,精准的很,就像一个模子刻出来的。

小猿:可是我就想要无机混有机的巨中霸,能做么。

厂长:能做是能做,就是得根据你的要求建一个分厂,沿用我们先进的流水线,保质保量,不能出现一个长得不一样的异类汉堡。

小猿:你们这是玩复制呢,3D打印!

厂长:呦呵,你可真有眼力!

小猿总结第四家Prototype汉堡厂,那就是一个超级复制大厂,提供模板,精准复制。

 

小猿奄奄一息的来到最后一家——Singleton汉堡厂

小猿:厂长,我走了好几家了,饿够呛,先给我个汉堡吃吃吧。

厂长:那可以不行。

小猿:为啥呢,见死不救啊!

厂长:我们家的汉堡可是世界唯一的,只能外借。

小猿:合着你家就一个汉堡啊!那还开什么汉堡厂啊!

厂长:听过X尼斯纪录上那个最大的汉堡没有(yy),我们家就那一个汉堡,我们提供外借展示、拍照等多项服务。

小猿看到一个比小猿还高的汉堡,饿晕了过去,于是最后一家没有总结了……

 

以上拙见,欢迎挑错,欢迎交流。

posted on 2015-05-08 15:50  池惜漾  阅读(806)  评论(4编辑  收藏  举报