一、UML图
二、概念
命令模式(Command):将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求进行排队或记录请求日志,以及支持可撤销的操作。
三、说明
角色:
(1)Command类:用来声明执行操作的接口。
(2)ConcreteCommand类:将一个接收者对象绑定与一个动作,调用接收者相应的操作,以实现Excute。
(3)...
分类:
编程语言 时间:
2014-12-23 19:30:39
阅读次数:
219
一、UML图
二、概念
桥接模式(Bridge):将抽象部分与它的实现部分分离,使他们都可以独立地变化。
三、说明
为什么叫“桥接模式”?
如上所示的UML图中,有一个聚合线,像一座桥,所以叫“桥接模式”。
概念解释:
什么叫抽象与它的实现分离,这并不是说,让抽象类与其派生类分离,因为这没有任何意义。实现指的是抽象类与它的派生类用来实现自己的对象。
...
分类:
编程语言 时间:
2014-12-23 12:23:53
阅读次数:
165
一、UML图
二、概念
迭代器模式(Iterator):提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。
三、说明
什么时候用?
(1)当你需要访问一个聚集对象,而且不管这些对象时什么都需要遍历的时候,你就应该考虑用迭代器模式。
(2)你需要对聚集有多种遍历时,可以考虑用迭代器模式。
(3)为遍历不同的聚集结构提供如开始、下一个、是否...
分类:
编程语言 时间:
2014-12-23 09:02:24
阅读次数:
265
一、UML图
二、概念
组合模式(Composite):将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。
三、说明
角色:
(1)Component:为组合中的对象声明接口,在适当情况下,实现所有类共有接口的默认行为。声明一个接口用于访问和管理Component 的子部件。
(2)Leaf:在组合中白哦是...
分类:
编程语言 时间:
2014-12-22 18:06:27
阅读次数:
263
TCPIP三次握手TCP(Transmission Control Protocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement ...
分类:
系统相关 时间:
2014-12-22 10:53:12
阅读次数:
251
一、UML图
二、概念
备忘录(Memento):在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将对象恢复到原先保存的状态。
三、说明
角色:
(1)Originator(发起人):负责创建一个Memento,用以记录当前时刻它的内部状态,并可以使用备忘录恢复内部状态。Originator可以根据需要决定Memento存储...
分类:
编程语言 时间:
2014-12-21 23:40:24
阅读次数:
359
需求:商场收银软件,根据客户购买物品的单价和数量,计算费用,会有促销活动,打八折,满三百减一百之类的。一,使用工厂模式。# -*- encoding: utf-8 -*-#现金收费抽象类class CashSuper def accept_cash(money) endend#正常收费子...
分类:
其他好文 时间:
2014-12-21 19:22:46
阅读次数:
165
TCP/IP协议族学习笔记:
一、基础概念: (1)TCP(Transmission Control Protocol) 传输控制协议。
(2)IP(Internet Protocol)网际协议。IP是一种不可靠的无连接数据协议,一种尽最大努力交付的服务。
(3)ISP(Internet Service Provider)因特网服务提供者。
(4)ISO 国际标准化组织。
(5)IEEE...
分类:
其他好文 时间:
2014-12-21 18:03:56
阅读次数:
282
一、UML图
二、概念
适配器模式:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原来由于接口不兼容而不能一起工作的那些类可以一起工作。
三、说明
(1)在想使用一个已存在的类,但是如果他的接口,也就是它的方法和你的要求不相同时,就应该考虑用适配器模式。
(2)用了适配器模式,客户代码可以统一调用统一接口就行了,这样可以更简单,更直接,更紧凑。...
分类:
编程语言 时间:
2014-12-21 18:00:58
阅读次数:
211
之前有看过《ruby设计模式》,不过渐渐的都忘记了。现在买了一个大话设计模式,看起来不是那么枯燥,顺便将代码用ruby实现了一下。# -*- encoding: utf-8 -*-#运算类class Operation attr_accessor :number_a,:number_b ...
分类:
其他好文 时间:
2014-12-21 16:29:58
阅读次数:
143