设计模式的分类和使用

1、什么是设计模式

模式的定义:模式是一种问题的解决思路,它已经适用于一个实践环境,并且可以适用于其他坏境。

设计模式通常是对于某一类的软件设计问题的可重用的解决方案,将设计模式引入软件设计和开发过程,其目的就在于要充分利用已有的软件开发经验。

2、设计模式的作用(或者为什么要用设计模式)

(1)  重用设计,重用设计比重用代码更有意义,它会自动带来代码的重用。【代码复用】

    (2) 为设计提供共用的词汇,每个模式名就是一个设计词汇,其概念使得程序员间的交流更加方便。【方便交流】

    (3) 在开发文档中采用模式词汇可以让其他人更容易理解你的想法,理解为什么你会这样做,你都做了些什么。

编写开发文档也更加容易。【易懂】

    (4) 应用设计模式可以让重构系统变得容易,可确保开发正确的代码,并降低在设计或实现中出现错误的可能性,还可以为重写其他应用程序 提供很好的系统框架。【结构清晰】

    (5) 正确使用设计模式,可以节省大量的时间。【省时】


3、设计模式的三分类两范围

按目的准则分类

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

简单工厂模式(Simple Factory);工厂方法模式(Factory Method);抽象工厂模式(Abstract Factory);

创建者模式(Builder);原型模式(Prototype);单例模式(Singleton)。

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

外观模式(Facade);适配器模式(Adapter);代理模式(Proxy);装饰模式(Decorator);桥模式(Bridge);组合模式(Composite);享元模式(Flyweight)。

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

模板方法模式(Template Method);观察者模式(Observer);状态模式(State);策略模式(Strategy);

职责链模式(Chain of Responsibility);命令模式(Command);访问者模式(Visitor);调停者模式(Mediator);

备忘录模式(Memento);迭代器模式(Iterator);解释器模式(Interpreter)。

根据范围准则分类

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

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

参照表:
范围\目的 Creational (创建型) Structural (结构型)   Behavioural (行为型)
Simple Factory Adapter (class) Interpreter
Factory Method   Template method
对象 Abstract Factory Adapter (object) Chain of Responsibility
Builder Bridge Command
Prototype Composite Iterator
Singleton Decorator Mediator
  Facade Memento
  Flyweight Observer
  Proxy State
    Strategy
    Visitor


原文
链接:http://www.cnblogs.com/vrliym/articles/1853829.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值