设计模式笔记
insswer001
这个作者很懒,什么都没留下…
展开
-
OO设计模式笔记01—策略模式
OO设计模式—策略模式 设计原则tip1:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。 如果每次新的需求依赖,都会使某方面的代码发生变化,那么你就可以确定,这部分的代码需要被抽出来,和其他稳定的代码有所区分。 考虑一个个经典的例子 Duck类中有fly和quack两种行为,但是不同的鸭子有不同的fly和quack行为。为了要把这个行为从Duc...原创 2011-04-26 19:17:23 · 76 阅读 · 0 评论 -
OO设计模式02—观测者模式(Observer )
OO设计模式—观测者模式(Observer ) 问题的引出: 首先看看报纸和杂志的订阅是怎么回事: 1. 报社的业务就是出版报纸。 2. 像某家报社订阅报纸,只要他们有新报纸出版,就会给你送来。只要你是他们的订户,你就会一直收到报纸。 3. 当你不想看报纸的时候,取消订阅,他们就不会再送新报纸来了。 4. 只要报纸还在运营,就会一直有人(或单位)向他们订阅报纸或取消订阅报纸。 ...原创 2011-04-26 19:20:54 · 133 阅读 · 0 评论 -
OO设计模式03—装饰者模式
OO设计模式—装饰者模式 设计原则tip:类应该对拓展开放,对修改关闭。(在不修改现有代码的情况下,就可搭配新的行为) 装饰者模式:动态地将责任附加到对象上。若要拓展功能,装饰者提供了比继承更有弹性的替代方案。 以下是《模式设计》书中的星巴克咖啡例子: [code="java"]public abstract class Beverage { String descr...原创 2011-04-26 19:29:33 · 109 阅读 · 0 评论 -
模式设计04—工厂模式
模式设计04—工厂模式 来自《模式设计》的一个很好的例子来引入简单工厂模式,工厂模式,抽象工厂模式 这里有一家匹萨店,匹萨店可能是这样的: [code="java"]Pizza orderPizza(){ Pizza pizza = new Pizza(); pizza.prepare(); pizza.bake(); pizza.cut(); pizz...原创 2011-04-27 20:16:47 · 108 阅读 · 0 评论