UML同一建模语言
摘要:结构型图:描述系统静态结构,显示系统类之间的静态关系。 行为型图:描述系统的动态属性,显示系统元素如何协作产生满足要求的系统行为。 类图分类名,属性清单,方法清单,性质清单几层 类之间的关系:1 一般化关系:类与类,接口与接口之间继承,类对接口实现。从子类指向父类、extends implement
阅读全文
posted @
2017-09-13 14:59
wheleetcode
阅读(168)
推荐(0)
调停者模式
摘要:概述: 调停者模式包装了一系列对象相互作用的方式,使得对象不必相互明显引用,从而使他们可以较松散的耦合,当这些对象中的某些对象之间的相互作用发生改变时,不会立即影响到其他的一些对象之间的相互作用,从而保证这些相互作用可以彼此独立变化。 大家都知道,电脑里面各个配件之间的交互,主要是通过主板来完成的。
阅读全文
posted @
2017-09-13 11:08
wheleetcode
阅读(326)
推荐(0)
解释器模式
摘要:概念: 解释器模式就是定义语言的文法,并定义一个解释器解释文中的句子。 在这里我们将语言理解成使用规定格式和语法的代码。 在前面我们知道可以构建解释器来解决那些频繁发生的某一特定类型的问题,在这我们将这些问题的实例表述为一个语言中句子。例如我经常利用正则表达式来检测某些字符串是否符合我们规定的格式。
阅读全文
posted @
2017-09-12 14:20
wheleetcode
阅读(162)
推荐(0)
访问者模式
摘要:概述; 在我们实际的软件开发过程中,有时候我们对同一个对象可能会有不同的处理,对相同元素对象也可能存在不同的操作方式,如处方单,划价人员要根据它来划价,药房工作者要根据它来给药。而且可能会随时增加新的操作,如医院增加新的药物。但是这里有两个元素是保持不变的,或者说很少变:划价人员和药房工作中,变的只
阅读全文
posted @
2017-09-11 17:22
wheleetcode
阅读(201)
推荐(0)
状态模式
摘要:概述: 状态模式允许一个对象在其内部状态改变的时候改变其行为, 在很多情况下,一个对象的行为取决于一个或多个动态变化的属性,这样的属性叫做状态,这样的对象叫做有状态的(stateful)对象,这样的对象状态是从事先定义好的一系列值中取出的。当一个这样的对象与外部事件产生互动时,其内部状态就会改变,从
阅读全文
posted @
2017-09-08 14:00
wheleetcode
阅读(153)
推荐(0)
备忘录模式
摘要:概述: 备忘录对象是一个用来存储另一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下,讲一个对象的状态捕获住,并外部化,存储起来,从而可以在将来合适的时候把这个对象还原到存储起来的状态。 备忘录模式所涉及的角色有三个:备忘录(Memento)角色、发起人(Originator)角色
阅读全文
posted @
2017-09-07 15:17
wheleetcode
阅读(168)
推荐(0)
命令模式
摘要:概述: 命令模式把发出命令的责任和执行命令的责任分开,委派给不同的对象。 命令模式(Command Pattern):将一个请求封装为一个对象,从而使我们可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式又称为动作(Action)模式或事务(Transacti
阅读全文
posted @
2017-09-06 16:33
wheleetcode
阅读(1388)
推荐(0)
责任链模式
摘要:概述: 在责任链模式中,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某个对象决定处理此请求,发出请求的客户端并不知道链上的哪个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织链和分配责任。 职责链模式(Chain of Respons
阅读全文
posted @
2017-09-05 14:45
wheleetcode
阅读(141)
推荐(0)
迭代子模式
摘要:概述: Java对迭代子模式的支持来自于Java聚集的需要,一个聚集需要向外界提供遍历聚集元素的方法。提供一种方法来让别人可以访问它的元素,而又不需要暴露它的内部结构 迭代器模式:使用迭代器模式来提供对聚合对象的统一存取,即提供一个外部的迭代器来对聚合对象进行访问和遍历 , 而又不需暴露该对象的内部
阅读全文
posted @
2017-09-05 14:17
wheleetcode
阅读(154)
推荐(0)
观察者模式
摘要:概述: 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一主题对象,主题对象在状态上发生变化时,会通知所有观察者对象像,使他们能够自动更新自己。 .适用性 在以下任一情况下可以使用观察者模式: • 当一个抽象模型有两个方面, 其中一个方面依赖于另一方面。将这二者封装在独立的对象中以使
阅读全文
posted @
2017-09-04 14:54
wheleetcode
阅读(155)
推荐(0)
模版方法
摘要:概述: 准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方法实现这些抽象方法,从而对剩余逻辑有不同的实现。 适用性 模板方法应用于下列情况: • 1) 一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现。 •
阅读全文
posted @
2017-09-04 14:30
wheleetcode
阅读(152)
推荐(0)
策略模式
摘要:概述: 在软件开发中经常遇到类似的情况,实现某一功能有多种算法或者策略,我们可以根据环境或条件的不同选择不同的算法或策略来完成功能。如查找、排序等,一种常用的方法是硬编码(Hard Coding)在一个类中,如需要提供多种查找算法,可以将这些算法写到一个类中,在该类中提供多个方法,每一个方法对应一个
阅读全文
posted @
2017-09-03 22:00
wheleetcode
阅读(178)
推荐(0)
不变模式
摘要:概述: 一个对象的状态在对象被创建之后就不再变化,这就是不变模式 弱不变模式:一个类的实例状态是不可变的,但这个类的子类的实例具有可能会变化的状态,实现弱不变性满足的条件: 1 对象没有任何方法修改对象的状态 2 对象的属性私有,客户端会对公开属性修改 3 对象所引用对象变化的话,必须限制外界对可变
阅读全文
posted @
2017-09-03 21:35
wheleetcode
阅读(130)
推荐(0)
桥梁模式
摘要:概述: 将抽象性化与实现化脱耦,使二者可以独立的变化。 耦合就是两个实体行为的某种强关联,将强关联去掉,或将强关联变为弱关联就是脱耦。 强关联就是在编译时期已经确定,无法在运行时期动态改变的关联。弱关联就是可以动态确定并且可以在运行时期动态改变的关联,继承关系是强关联,聚合关系是弱关联。 将两个角色
阅读全文
posted @
2017-09-03 16:41
wheleetcode
阅读(152)
推荐(0)
门面模式
摘要:概述: 提供一个统一接口,用来访问子系统的一群接口,门面模式定义了一个高层接口,让子系统更容易使用。 ● 门面(Facade)角色 :客户端可以调用这个角色的方法。此角色知晓相关的(一个或者多个)子系统的功能和责任。在正常情况下,本角色会将所有从客户端发来的请求委派到相应的子系统去。 ● 子系统(S
阅读全文
posted @
2017-08-24 17:33
wheleetcode
阅读(145)
推荐(0)
享员模式
摘要:概述: 所谓享员模式就是运用共享技术有效地支持大量细粒度对象的复用,Java语言中String类型就使用了享元模式。String对象是不变对象,一旦创建出来就不能改变。在jvm内部,String对象是共享的,如果一个系统有两个String对象所包含字符串相同的话,jvm实际只创建一个string对象
阅读全文
posted @
2017-08-23 16:13
wheleetcode
阅读(239)
推荐(0)
代理模式
摘要:概述 代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。通过引用代理对象来访问真实对象就是代理模式的设计动机。 生活中的代理很多,如有快递公司通知你去取快递,你可以委托你的朋友去,而你的朋友就是你的代理,此外还有网络上的代理服务器 模式结构 subject 抽象角色; 声明被代理
阅读全文
posted @
2017-08-21 23:28
wheleetcode
阅读(171)
推荐(0)
装饰模式
摘要:概述: 装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。装饰者模式可以在不使用创造更多子类的情况下,将对象的功能加以扩展。 装饰者与被装饰者拥有共同的超类,继承的目的是继承类型,而不是行为 1.抽象构件(Component)角色:给出一个抽象接口,以规范准备接收附加责任的对象
阅读全文
posted @
2017-08-21 15:12
wheleetcode
阅读(199)
推荐(0)
合成模式
摘要:概述: 合成模式属于对象的结构模式,有时叫部分-整体模式。合成模式将对象组织到树结构中,可以用来描述整体与部分的关系。合成模式可以使客户端将单纯元素和复合元素同等看待。 安全式: 在Composite类里声明所有的用来管理子类对象的方法。这样的做法是安全的做法,因为树叶类型的对象根本就没有管理子类对
阅读全文
posted @
2017-08-20 16:02
wheleetcode
阅读(214)
推荐(0)
缺省适配器
摘要:概述: 缺省适配器模式为一个接口提供缺省实现,这样子类可以从这个缺省实现经行扩展,而不必从原有接口经行扩展。 interface abstractService{ void service1(); int service2(); String service3(); } class ServiceA
阅读全文
posted @
2017-08-20 15:00
wheleetcode
阅读(258)
推荐(0)