Quantcast
Channel: CSDN博客推荐文章
Viewing all articles
Browse latest Browse all 35570

【2013.2.9】设计模式C++ 实现——Template

$
0
0

// // // // // // // // //

///2013.2.9

// // // // // // // // //

今天是大年三十,

笔者在这里祝大家新年快乐哈。


电视台里还在播放春晚,

外面放着鞭炮,

很有过年的气息(笔者依旧在这里敲代码,尽管)。


其实近些年春晚还是有不少争议的,

先不论其内容如何,

有很多人批判其形式一成不变,

每年都是这个模式:


while(!End)

{

开场舞->唱唱歌->演演小品->主持人讲几个冷笑话->唱唱歌->说说相声->主持人讲讲冷冷笑话

->唱唱歌->刘谦来表演个魔术->主持人讲讲冷笑话;

}

难忘今宵();

return 0;


恩,春晚终于有价值了,

因为它可以作为我们今天的例子来讲解这个设计模式:Template.


【核心】当不同程序逻辑相同,具体算法不同时,使用此模式。


就像每年的春晚形式(逻辑顺序)相同,

而具体内容(算法)不同。


【UML图】



这个模式最大的特点是使用继承而非组合去实现的。

严格意义上来讲,

这属于松耦合。


凡是耦合必然会带来程序调整不方便的问题,

Template也不例外。

不过,

与其解决目标相似的Strategy模式却正好使用组合来弥补这个缺陷。



作者:Elezeor 发表于2013-2-9 20:57:48 原文链接
阅读:25 评论:0 查看评论

Viewing all articles
Browse latest Browse all 35570

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>