CRC 全称“Class-Responsibility-Collaboration”,是面向对象设计中的一种简单易行
的快速设计方法。经过破门在公司项目的实践,感觉到设计过程的确简单易行,所以根据
Ward Cunningham 的一篇讲稿整理出一份简单介绍,贴出来与大家共享。
翻译的PowerPoint讲稿可以在此下载:
firstCRCftp://www.clinux.org/pub/brokendoor/xp/firstCRC-cn.zip1。面向对象编程的四个阶段
- 标识对象
- 设计草案
- 构造层次
- 实现方法
其实现难度是按照由下到上的顺序递增的
2.标识对象简介
- 按照合作代理(对象)的行为进行模块估计
- 定义特定对象的类
- 在类的基础上分配责任(符合需求)
3.一个设计方法
- 根据经验和智慧做出决定
- 用结构化的设计文档记录决定
- 充分彻底的测试设计
- 在实现的过程中维护和遵循设计
4.设计表述(CRC)
- 列举所有的新类
- 定义类成员担负的责任
- 通过分配的责任来描述合作关系
5.CRC卡片介绍(使用实例 DrawingEditor)
第一步:从已知的开始
- 一个图由多个图片构成
- 图片分成很多种类
第二步:推测支持者
- 一个线可能连接到其他图片
- 一个“智能”点完成这个工作
第三步:进行情景测试
- 图片移动的时候依赖于定位器
- 通过定位器改变顺序
第四步:尝试进行分组
- 一个处理类似一个工具
- 处理器是唯一的
第五步:重新分配责任
- 选择保持在视图类中
- 选择不会和图一起保存
第六步:为了清晰化而重写
- 图片排序非常重要
__________________
门之不存,道乃得之!下马饮君酒,问君何所之。
君言不得意,归卧南山陲。
但去莫复问,白云无尽时。
————
*
http://www.softme.org*
http://www.wfchina.org*
http://gro.clinux.org/projects/webpm/