摘要: 模板方法(TemplateMethod)定义了一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 模板方法是一种代码复用的基本技术,在类库中尤为重要,因为他们提取了类库中的公共行为。模板方法导致一种反向的控制结构,这种结构就是传 阅读全文
posted @ 2017-03-20 16:46 sungang 阅读(1070) 评论(0) 推荐(0) 编辑
摘要: 策略模式:定义了算法家族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化不会影响到使用算法的客户。 例子1:根据员工薪水salary、绩效等级S、A、B、C,来计算年终奖 //封装了所有算法的策略对象 var strategies = { 'S': function(salary){ re 阅读全文
posted @ 2017-03-20 14:47 sungang 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 外观模式(Facade)为子系统中的一组接口提供了一个一致的界面,此模块定义了一个高层借口,这个接口使得这一子系统更加容易使用。 外观模式不仅简化类中的接口,而且对接口与调用者也进行了解耦。外观模式经常被认为开发者必备,它可以将一些复杂操作封装起来,并创建一个简单的接口用于调用。 var fuhao 阅读全文
posted @ 2017-03-20 10:13 sungang 阅读(408) 评论(0) 推荐(0) 编辑