zoukankan      html  css  js  c++  java
  • Template Method模式和Strategy模式[继承与委托]

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

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

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

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

  • 相关阅读:
    ruby html解析器
    国外cdn
    ruby爬虫utf8编码相关
    Ruby 1.9 regex (named capture group)正则名组
    ruby爬虫综述
    ruby新加实例方法写法
    机房
    Net::HTTP Cheat Sheet
    ror一键安装包forwin
    病毒6655.la
  • 原文地址:https://www.cnblogs.com/robyn/p/3465835.html
Copyright © 2011-2022 走看看