摘要:
模板方法模板方法模式定义一个操作中算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。组成部分父类定义模板(算法的骨架) 但是方法的实现 延迟到子类结构ShoppingCartProcessor 父类定义算法模板WebCartProcessor 子类具体实现个人对模板算法不做理解,这不是一个很复杂的设计模式。 阅读全文
摘要:
策略模式 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。组成—抽象策略角色: 策略类,通常由一个接口或者抽象类实现。—具体策略角色:包装了相关的算法和行为。—环境角色:持有一个策略类的引用,最终给客户端调用。应用场景应用场景:1、 多个类只区别在表现行为不同,可以使用Strategy模式,在运行时动态选择具体要执行的行为。2、 需要在不同情况下使用不同的策略(算法),或者策略还可能在未来用其它方式来实现。3、 对客户隐藏具体策略(算法)的实现细节,彼此完全独立。优缺点优点:1、 策略模式提供了管理相关的算法族的办法。. 阅读全文