设计模式之定义与分类

来源:互联网 发布:赋安消防主机编程 编辑:程序博客网 时间:2024/05/18 15:55

                       CSDN的博客栏目的维修终于结束了!

                在前面的文章中,我们知道为了实现程序的可维护,可扩展,灵活性更高,能够复用,只是简单的封装与

     继承是不够的,而是要通过一些设计模式来降低程序的耦合度.

             那么,到底何为设计模式呢?

                   说到底设计模式也就是一种解决问题一种思路、方案,只是这种方案经过反复的论证适用于一个

     实践环境,放之四海而皆准!

                    以GOF设计模式为准, 设计模式可以分为三大类:

                           创建型设计模式行为型设计模式结构型设计模式     

                 以下为引用:

GoF模式在粒度和抽象层次上各有不同,分类很明显。

  1.根据目的准则分类

    就是说,指定的模式用来完成什么样的工作。可分为三种:

    (1) Creational (创建型):与对象创建有关。

    (2) Structural (结构型):处理类或对象的组合。

    (3) Behavioral (行为型):描述类或对象如何交互及如何分配职责。

  2.根据范围准则分类

    即指定的模式用于类还是用于对象,分为两种:

    (1) 类模式:用于处理类和子类之间的关系,这些关系通过继承建立,是静态的,在编译时就已经确定下来了。因为从某种意义上说,几乎所有模式都是使用继承机制,因此此处的“类模式”是指集中处理类间关系的模式,只有很少部分模式属于此类。

    (2) 对象模式:用于处理对象间的关系,这些关系具有动态性,在运行期间是可以变化的。

 

范围\目的Creational (创建型)Structural (结构型)  Behavioural (行为型)Simple FactoryAdapter (class)InterpreterFactory Method
Template method对象Abstract FactoryAdapter (object)Chain of ResponsibilityBuilderBridgeCommandPrototypeCompositeIteratorSingletonDecoratorMediator
FacadeMemento
FlyweightObserver
ProxyState

Strategy

Visitor