回忆容易产生误解的模式名称

不是送给高手,是送给我这样容易忘事的人:)哈哈~
工厂与工厂方法:
    通常我们说的工厂是指工厂类或者工厂对象,而工厂方法是一个方法,即类的一部分。这里的关键词是“方法”,具有工厂方法的类不一定是工厂类。在很多书的例子中,工厂方法在工厂类中。虽然可以,但是掩盖了工厂方法的关键。
    一个非常典型的工厂方法的实例是集合的枚举,集合本身并不是一个工厂类,但采用了工厂方法来获得对其自身进行便利的枚举数。
生成器与生成器模式:
    生成器模式中的生成器只是模式的一部分,这个模式的另一个关键部分是导航器,离开导航器,模式不是完整的。需要注意的是,很多是用生成器的场合都没有采用生成器模式,没有导航器的存在说明没有构建过程的复用,而这时生成器模式的关键。
    特别注意的是,很多类在命名时采用了生成器,但注意这样不一定就是生成器模式。
桥接与桥接模式:
    桥接模式的作用是将逻辑与具体的实现分开,这里的桥接器是逻辑和实现抽象的组合。还有很多其他类型的桥接器,例如DataAdapter是ADO.Net中的重要组成部分。它起到了具体的数据库(如SQLSERVER,ORACLE)和DataSet之间的桥接器的作用,但在这个结构中并没有采用桥接模式。
状态与状态模式:
    状态是指事物表现出来的形态,例如人发烧的状态是体温在37摄氏度以上,但状态模式中所封装的是在不同状态下所具有的不同行为,换言之,我们可以用一个带有体温的类来描述人是否发烧的状态,但这并没有采用状态模式。
    状态模式封装的是不同状态下相同接口的不同行为的内涵,例如,鼠标拖动行为,在编辑状态的作用是选择图元;在图元创建状态则是定义需要创建图元的位置和大小。
适配器与适配器模式:
    适配器模式解决的是两个类接口不一致的问题,而适配器的含义要广得多,可以解决各种形式的不兼容问题。例如,我们可以编制一个数据适配器,解决新老数据库结构不一致的问题。也可以编制一个通信适配器,解决通信协议不一致的问题。但通常,这些适配器都没有用到适配器模式。
装饰器和装饰器模式:
    装饰器模式的关键是被装饰完成后的对象与完成前的对象有相同的接口,所扩充的是职责,但接口并没有改变,换句话讲,如果装饰器的引入使接口发生了变化,那就不再是装饰器模式了。
代理和代理模式:
    与装饰器模式相同,代理模式的关键也是接口必须相同,在代理模式中,客户程序不需要知道代理的存在,也不需要改变接口。
    而通常意义上的代理与代理模式有所不同,例如,如果一个局域网安装了代理服务器,则必须在浏览器中设置代理服务器的IP以及端口,用户必须知道代理的存在,这在使用上很不方便,特别是使用笔记本电脑的临时用户,每到一个地方就需要更换一个代理。

posted on 2006-06-03 12:28  萝卜青菜  阅读(248)  评论(0编辑  收藏  举报

导航