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/