设计模式概述

一、设计模式的诞生与发展

 

 

  设计模式起源于建筑行业,美国加利佛尼亚大学环境结构中心研究所所长Alexander博士给出关于模式的经典定义:每个模式都描述一个在我们环境中不断出现的问题,然后描述了该问题的解决方案的核心,通过这种方式,我们可以无数次的重用那些已有的解决方案,无需再重复相同的工作。  

  1990年,软件工程界开始关注Alexander博士再公共建筑与规划领域的重大突破,“四人组”(GOF)在1994年归纳发表了23种软件开中使用频率较高的设计模式,旨在用模式来统一沟通面向兑现方法在分析、设计和实现间的鸿沟。

 

二、设计模式的定义与分类

 

  定义:设计模式是一套可以被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结,使用设计模式是为了可重用代码、让代码更容易被他人理解并且提高代码的可靠性。

 

  设计模式的分类:

 

    (1)根据目的分类:

 

    创建型 主要用于创建对象。 有工厂方法模式(Factory Method)、抽象工厂模式(Abstract Factory)、建造者模式(Builder)、原型模式(Prototype)、单例模式(Singleton)5种。

 

    结构型  主要用于处理类和对象的组合。 有适配器模(Adapter)、桥接模式(Bridge)、组合模式(Composite)、装饰模式(Decorator)、外观模式(Facade)、享元模式(Flyweight)、代理模式(Proxy)7种。

 

    行为型 主要用于描述类或对象怎么样交互和怎样分配职责。有 指责链模式(Chain of Responsibility)、命令模式(Command)、解释器模式(Interpreter)、迭代器模式(Iterator)、中介者模式(Mediator)、备忘录模式(Memento)、观察者模式(Observer)、状态模式(State)、策略模式(Stratege)、模板方法模式(Template Method)、访问者模式(Visitor) 11种。

 

    (2)根据范围分类:

 

     可分为类模式和对象模式。

 

     类模式用于处理类和子类的关系,这种关系通过继承建立,在编译时就确定了,是一种静态关系。

 

     对象模式处理对象间的关系,具有动态关系。

 

     类模式有 工厂方法模式、 适配器模式、解释器模式、模板方法模式,其余是对象模式。

 

三、设计模式的作用

 

  (1)  设计模式以一种标准的方式供广大开发人员使用,为开发者的沟通提供了一套机制,帮助开发者更好地明白和更清晰地描述一段被给出的代码。

 

  (2)设计模式可以使人们更加方便简单复用成功的设计模式和结构。

 

  (3)设计模式可以使人们深入理解面向对象的设计思想,提高软件的开发效率,节约设计成本。

posted @ 2020-03-15 09:48  昵称怎么这么难设定  阅读(35)  评论(0)    收藏  举报