码迷,mamicode.com
首页 > 其他好文 > 详细

Template Method模式和Strategy模式[继承与委托]

时间:2014-05-15 13:49:49      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:style   blog   code   c   ext   http   

继承

  • program by difference.
  • 通过继承,可以建立完整的软件结构分层.其中每一层都可以重用该层次以上的Code.
  • 过度使用继承的代价是巨大的.应使用组合或者委托来替代继承.
  • Template Method(使用继承)和Strategy(使用委托)模式解决了相同的问题:分离通用的算法和具体的上下文(DIP).
  • Template Method模式.
    • bubuko.com,布布扣
  • Strategy模式
    • bubuko.com,布布扣
    • Template Method模式允许一个通用算法操纵多个可能的具体实现.
    • 而完全遵循DIP的Strategy模式,允许每一个具体实现都可以被多个不同的通用算法操纵.

总结.两者都用来分离高层算法和底层的具体实现.都允许高层算法独立于它的具体实现细节.

Strategy模式也允许具体实现细节独立于高层算法的重用.

 

[Agile Software Development(Principles,Patterns,and Pracitices)]

Template Method模式和Strategy模式[继承与委托],布布扣,bubuko.com

Template Method模式和Strategy模式[继承与委托]

标签:style   blog   code   c   ext   http   

原文地址:http://www.cnblogs.com/RobynHan/p/3729291.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!