自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 调停者,观察者,门面模式

调停者(Mediator)模式调停者模式是常常被滥用的几个模式之一,在下列情况下不应当使用调停者模式。(1)不应当在责任划分混乱的时候使用(2)不应当对“数据类”和“方法类”使用         初级设计师常常会设计出这样的一种系统:让一系列类只含有数据,另一些类只含有方法。比如,描述一个客户时,这些设计师首先设计出一个叫做客户数据的类,只含有客户数据;另外再设计一个类叫做“管...

2011-11-15 19:38:22 450

原创 访问者模式

访问者模式

2011-08-26 10:06:47 116

原创 状态模式

状态模式

2011-08-26 10:06:29 94

原创 备忘录模式

备忘录模式又叫快照模式或者Token模式 是对象的行为模式备忘录模式是备忘录对象保存了发起者对象,在发起者对象变化之后,可以恢复变化之前的状态。1,备忘录模式的角色:发起者角色:负责创建备忘录角色,且将当前的对象保存在备忘录对象中去。。备忘录角色:保存发起者角色的状态。负责人角色:保存备忘录对象。不负责备忘录角色的内容。2,模式实例 现在以我们在读书的时候,老是经常用黑...

2011-08-25 16:17:07 117

原创 命令模式

命令模式核心是封装命令类(请求类),每一个命令类作单独的类,分离命令请求者和接受命令执行者。是把请求或者操作封装到一个类中。命令模式把发出命令和执行命令的责任分割开。1,命令模式的角色划分:客户角色:创建命令(请求)对象,确定接收者。命令角色:抽象命令类接口,提供命令类的统一的抽象接口。具体命令角色:确定接受者,以及调用接受者的相应方法。请求者角色:调用命令对象执行请求,发...

2011-08-25 14:40:03 79

原创 责任链模式

责任链模式是一种行为模式。多个处理类组成一个责任链,责任链处理同一个请求,如果处理类不处理就传递给下一个处理类来处理,每个处理类保持对下一个处理类的引用,直到遍历完所有链类直到有类来处理为止。纯的责任链有两种行为:要么处理掉,要么不处理掉。不纯责任链:处理器只处理其中一部分请求逻辑,责任链中所有处理器类可以不处理请求。 这里以 病人看病。刚好 脚受伤。。不知道找哪个科室。分别找内科...

2011-08-24 21:40:02 73

原创 模板方法模式

这个模式相对来说也比较简单。

2011-08-24 13:35:44 70

原创 策略模式

策略模式是比较常用的一种模式.封装不算法。每一个算法封装在不同类中。然后根据客户端的需求。选择相应的算法。策略模式主要角色:环境角色:一般会持有策略类的父类引用。抽象策略角色:提供策略类的共有行为和接口。具体策略角色:每个策略包装一种算法和行为。现在以人不同方式回家为例。。把每种回家方式封装成一个不同的算法,分别封装在不同的类中//抽象回家方式接口。封装一个父类接口pu...

2011-08-23 16:02:35 79

原创 不变模式

不变模式比较简单,一般设计成一个类或者一个继承等级结构。不变模式分弱不变模式和强不变模式弱不变模式:对象的状态不会改变,不提供任何修改对象状态的方法。所有的属性都是私有的。 子类继承可能存在修改内部对象 的方法。强不变模式:  类的设计成final类,不可被继承。对象的内部状态初始化时,就固定。不提供任何修改内部状态的方法。如果引用的外部对象是可变的。提供复制之后的引用的外...

2011-08-23 15:42:01 86

原创 桥梁设计模式(柄体设计模式)

桥梁设计是将抽象化和实现化分离。抽象化就是指模型的抽象化,是实现化是行为的实现化。这个是模式讲模型和行为进行分离。然后让各自的两个等级结构各自独立的变化。然后行为的等级结构组合到模型的等级结构中。可以任意组合。实现多项功能。角色如下: 抽象化角色:实际上是对实体领域对象的抽象,不包含这个实体的行为实体。但是具体子类会保存实现化角色的引用。修正抽象化角色:这个实际上抽象化角色的子类。但是...

2011-08-22 23:51:45 182

原创 适配器模式(变压器模式)

为什么要 用适配器模式。就是把两个完全不关联或者不相同的类纠合一起时才使用这个模式。 这个模式涉及到角色: 源角色:需要适配的角色。 目标角色:期待使用的接口。 适配器角色:把源角色转化成目标角色。这个是模式的核心。着重转化功能。适配器模式分两种情况: 类的适配器模式和对象的适配器模式 。首先来讲讲类的适配器模式:如下例:指方为圆的故事。//方形接口public inter...

2011-08-22 21:42:32 142

原创 享元模式

享元模式的角色划分:1,抽象享元角色:享元角色需要实现的公共接口。外蕴状态可以通过商业方法以参数的形式传入。2,具体享角色:负责维护内蕴状态。且提供内蕴含状态的空间。内蕴状态不与环境有关,对象初始化时,内蕴含状态就已经产生。3,享元工厂角色:负责维护和管理享元角色,在工厂中没有找到相应的享元对象,则负责创建相应的享元对象。 本质工厂角色应该是个享元对象的容器。4,客户端角色:自...

2011-08-18 08:53:40 76

原创 装饰器模式(包裹模式)

装饰器模式的形象理解油漆工刷油漆。油漆工是装饰器角色,被刷者是被装饰器角色。装饰器分四个角色抽象构件角色:增加附加功能的一个抽象接口。也就是被装饰的一个抽象角色。具体构件角色:抽象构件角色的实现类。装饰器角色:持有抽象构件觉得一个变量引用。切也要与抽象构件角色同一接口。具体装饰器角色:装饰器角色的实现类。具体附加功能到抽象角色。说了这么多。。还是用实例来描述比较形象。下面一...

2011-08-16 09:58:56 137

原创 组合设计模式(合成模式)

组合设计模式(部分-整体设计模式) 主要角色涉及三个抽象构件角色(component):规定参加参加组合的对象共有的行为,这个接口可以用来管理所有的子对象。树叶构件角色:参加对象组合的树叶对象。给出add(),remove()之类的方法的平庸实现。一般针对树叶构件的角色不提供add(),remove()等管理子对象的方法。树枝构件角色:参加组合的对象含有子对象的对象。组合模式以...

2011-08-14 23:35:34 96

原创 设计模式的6大原则

设计最常遵守的6大原则第一原则: “开--闭”原则,一个软件实体(或者说一个模块)对修改关闭,对扩展开放。 针对一个模块。在不修改代码前提下可以被扩展。要做一下两点1,抽象化,抽象化可以导出不同的具体化。2,对可变性的封装,原则是多个可变性应该封装在不同的类中第二原则 里氏代换原则。 1,使用对象的基类,都可以用子类代换。任何使用基类的地方都适用子类第三原则...

2011-08-14 07:23:45 116

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除