第1章 為什么要使用面向對象設計
什么是軟件危機
抽象概念是怎樣幫助我們的
什么是對象
什么是軟件的生命周期
什么樣的軟件可以重用
誰設計軟件
在本書中有什么
第2章 對象和其他基本要素
什么是對象
如何訪問對象
類和實例
多態(tài)性
繼承
面向對象設計
客戶和服務器
客戶-服務器契約
術語
第3章 類
發(fā)現類
畫圖編輯器需求說明
畫圖編輯器設計:發(fā)現類
記錄候選類
發(fā)現抽象類
自動柜員機需求說明
自動柜員機設計:發(fā)現類
第4章 職責
什么是職責
確定職責
分配職責
檢查類之間的關系
記錄職責
ATM設計:發(fā)現和分配職責
第5章 協(xié)作
什么是協(xié)作
發(fā)現協(xié)作
記錄協(xié)作
排練
ATM設計:發(fā)現協(xié)作
探索階段總結
第6章 分層結構
分層結構圖
維恩圖
創(chuàng)建良好的分層結構
確定契約
修改你的設計
為ATM系統(tǒng)建立分層結構
定義契約
總結
第7章 子系統(tǒng)
協(xié)作圖
什么是子系統(tǒng)
確定子系統(tǒng)
簡化交互
核對你的設計
分析ATM系統(tǒng)的協(xié)作
第8章 協(xié)議
細化職責
詳細說明你的設計
ATM系統(tǒng)的簽名
小結
第9章 實現你的設計
選擇語言
管理實現
評估你的設計質量
邀請
第10章 又一個設計
聯機文檔系統(tǒng)需求說明
發(fā)現子系統(tǒng)
發(fā)現類
發(fā)現職責和協(xié)作
探索階段總結
建立分層結構
發(fā)現契約
簡化協(xié)作
創(chuàng)建協(xié)議
附錄A 快速查閱
附錄B ATM系統(tǒng)設計
附錄C 文檔子系統(tǒng)設計
附錄D 練習