C军

不玩博客了!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2013年3月20日

摘要: 命令模式(Command),将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销操作。 下面给出命令模式的结构图: 下面是命令模式的基本结构代码:namespace ConsoleApplication1{ abstract class Command { protected Receiver receiver; public Command(Receiver receiver) { this.receiver = receiver; ... 阅读全文
posted @ 2013-03-20 01:37 逆心 阅读(354) 评论(0) 推荐(0) 编辑

摘要: 合成/聚合复用原则(CARP),尽量使用合成/聚合,尽量不要使用类继承。 合成和聚合都是关联的特殊种类。聚合表示一种弱的“拥有关系”,体现的是A对象可以包含B对象,但B对象不一定是A对象的一部分;合成则是一种枪的‘拥有’关系,体现了严格的部分和整体的关系,部分和整体的声明周期一样。比方说,大雁有两个翅膀,翅膀与大雁是部分和整体的关系,并且它们的声明周期是相同的,于是大雁和翅膀就是合成关系。而大雁是群居动物,所以每只大雁都是属于一个雁群,一个雁群可以有多只大雁,所以大雁和雁群是聚合关系。 合成/聚合复用原则的好处是,有限使用对象的合成/聚合将有助于你保持每个类被封装,并被集中在单个任务上... 阅读全文
posted @ 2013-03-20 00:00 逆心 阅读(395) 评论(0) 推荐(0) 编辑