博客专栏  >  系统运维   >  设计模式解析

设计模式解析

记录整理设计模式学习的点点滴滴!

关注
1 已关注
26篇博文
  • 设计模式之享元模式

    1、享元模式运用共享技术有效地支持大量细粒度的对象。 UML图如下:

    2014-07-09 10:41
    442
  • 设计模式之中介者模式

    一系列的对象交互。中介者使各对象不需要显示相互引用,从而使其耦合松散,而且可以独立地变化它们之间的交互。 UML图如下:

    2014-07-09 11:17
    412
  • 设计模式之责任链模式

    1、责任链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。奖这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 UML图如下:

    2014-07-09 11:46
    394
  • 设计模式之备忘录模式

    1、备忘录模式(Memento):在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 Originator(发起人):负责创建一个...

    2014-07-09 12:27
    363
  • 设计模式之适配器模式

    适配器模式(Apater)将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。      适配器模式主要解决什么问题呢? ...

    2014-07-09 13:10
    448
  • 设计模式之状态模式

    状态模式(State),当一个对象的内在状态改变时,允许改变其行为,这个对象看起来像是改变了其类。 状态模式主要解决的是当控制一个对象的状态转换的条件表达式过于复杂时的情况。把状态的判断逻辑...

    2014-07-09 13:27
    437
  • 设计模式之抽象工厂模式

    抽象工厂模式(Abstract Factory)提高一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。       AbstractProductA和AbstractProdu...

    2014-07-09 13:43
    439
  • 设计模式之装饰模式

    1、动态地给一个对象添加一些额外的职责,就增加工能来说,装饰模式比生成子类更为灵活。Component是定义一个对象接口,可以这些对象动态添加职责。ConcreteComponent是定义了一个具体的...

    2014-07-09 14:17
    352
  • 设计模式之迭代器模式

    1迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中各个元素,而不是暴露该对象的内部表示。      一个聚集对象,而且不管这些对象是什么都需要遍历的时候,你就应该考虑用迭代...

    2014-07-09 15:31
    388
  • 设计模式之组合模式

    1、组合模式(Composite):将对象组合成树形结构已表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 UML图如下:

    2014-07-09 15:44
    334
  • 设计模式之观察者模式

    1、观察者模式又叫做发布-订阅(Publish/Subscribe)模式。 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一主题对象,这个主题对象在状态发生变化时,会通知所有观察者...

    2014-07-09 15:53
    372
  • 设计模式之模板方法模式

    定义了一个操作中的算法的骨架,而将一些步骤延迟到了子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。      当我们要完成在某一细节层次一致的一个过程或一系列...

    2014-07-09 16:18
    349
  • 设计模式之工厂方法模式

    1、定义了一个用于创建对象的接口,让子类决定实例化那一个类。工厂方法使一个类的实例化延迟到其子类。 UML图如下:

    2014-07-09 16:26
    340
  • 设计模式之代理模式

    代理模式(Proxy)为其他对象提供一种代理以控制对这个对象的访问。Subject类定义了RealSubject和Proxy的共用接口,这样就在任何使用RealSubject的地方都可以使用Proxy...

    2014-07-09 16:39
    427
  • 设计模式之简单工厂模式

    1、简单工厂设计模式:也就是说,到底要实例化谁,将来会不会增加实例化的对象,这是很容易发生变化的地方,应该考虑用一个单独的类来做这个创建实例的过程,这就是工厂。       UML图如下:

    2014-07-09 16:46
    405
  • 设计模式之命令模式

    命令模式(commond),将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。

    2014-07-09 10:31
    488
  • 设计模式之桥接模式

    桥接模式(Bridge),将抽象部分与它的实现部分分离,使它们都可以独立地变化。 什么叫抽象与它的实现分离,这并不是说,让抽象类与其派生类分离,因为这没有任何意义。实现指的是抽象类和它的派生...

    2014-07-09 10:24
    326
  • 设计模式之单例模式

    单例模式(Singleton),保证一个类仅有一个实例,并提供一个访问它的全局访问点。 通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化多个对象。一个最好的办法就是,让类自...

    2014-07-09 10:15
    336
  • 设计模式之外观模式

    为了系统中一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。   UML图如下:

    2014-07-09 10:04
    462
  • 设计模式之策略模式

    1、策略模式定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。结构图如下:

    2014-07-09 09:39
    358
img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部