第0章 軟件過程
0.1 軟件過程概述
0.2 需求分析
0.3 設計(本書討論的重點)
0.4 編碼
0.5 測試
0.6 維護
軟件過程小結
習題
第一部分 設計原則、統(tǒng)一建模語言和代碼級設計
第1章 程序設計回顧及軟件設計導論
1.1 “軟件設計”的含義及本書如何對其進行介紹
1.2 函數(shù)的說明文檔
1.3 回顧編寫函數(shù)時應具有的編程好習慣
1.4 軟件設計的目標
1.5 軟件設計符號
本章小結
習題
附錄
第2章 面向對象
2.1 面向對象的目標
2.2 類和對象
2.3 面向對象的特點
2.4 需要強調的問題
本章小結
習題
第3章 統(tǒng)一建模語言
3.1 統(tǒng)一建模語言的目標
3.2 UML中的類
3.3 UML中類的關系
3.4 用例
3.5 時序圖
3.6 狀態(tài)模型
3.7 活動圖
3.8 示例
本章小結
習題
第4章 設計準則I:正確性和健壯性
4.1 正確性和充分性
4.2 健壯性
4.3 設計細節(jié):充分性
本章小結
習題
第5章 設計準則Ⅱ:靈活性、可重用性和高效性
5.1 靈活性
5.2 可重用性
5.3 高效性
5.4 健壯性、靈活性、可重用性與高效性之間的折中
本章小結
習題
第二部分 設計模式
第6章 設計模式導論
6.1 可重現(xiàn)設計目標
6.2 設計模式的概念
6.3 按類型總結設計模式:創(chuàng)建型、結構型、行為型
6.4 設計模式的特征:觀點、角色、層次
6.5 設計模式的形式:委托和遞歸
本章小結
習題
第7章 創(chuàng)建型設計模式
7.1 創(chuàng)建型設計的目標
7.2 Factory設計模式
7.3 Singleton設計模式
7.4 Abstract Factory設計模式
7.5 Prototype設計模式
本章小結
習題
附錄A
附錄B
附錄C
附錄D
第8章 結構型設計模式
8.1 結構型設計的目標
8.2 Facde:類集的接口
8.3 Decorator:運行時負責添加或刪除類
8.4 Composite:對象的樹型結構表示
8.5 Adapter:更具靈活性的接口
8.6 Flyweight:管理大量極為相似的類
8.7 Proxy:避免多余的操作
結構型設計模式小結
習題
附錄A
附錄B
附錄C
附錄D
附錄E
第9章 行為型設計模式
9.1 行為型設計的目標
9.2 Interpreter:分析表達式
9.3 Iterator:訪問集合中的成員
9.4 Mediator設計模式
9.5 Observer設計模式
9.6 State設計模式
9.7 Chain of Responsibility設計模式
9.8 Command設計模式
9.9 Template設計模式
本章小結
習題
附錄A
附錄B
附錄C
附錄D
附錄D
附錄F
第三部分 組件
第10章 組件的介紹
10.1 組件的定義
10.2 組件使用的一個實例
10.3 組件的組成
10.4 組件的UML標識
10.5 組件生存期的各個階段
10.6 CORBA組件標準
本章小結
習題
附錄
第11章 JavaBeans
11.1 JavaBeans的目標
11.2 JavaBeans的定義
11.3 階段1:創(chuàng)建Bean類
11.4 階段2:創(chuàng)建組合多個類的Bean
11.5 階段3:創(chuàng)建Bean實例
11.6 階段4:在Bean環(huán)境中組合和部署B(yǎng)ean
11.7 通過改變屬性來連接Bean:“有界的”變量
11.8 在JSP中使用Bean
本章小結
習題
第12章 Microsoft組件集
12.1 Microsoft .NET的概述
12.2 C#語言的組成
12.3 一個簡單的HelloWorld .NET組件集
12.4 一個包含多重類的.NET組件
12.5 .NET組件集中的元數(shù)據
12.6 組件集的識別
本章小結
習題
第四部分 面向對象分析和設計
第13章 需求和領域類
13.1 面向對象分析和設計的特性
13.2 Encounter實例研究
13.3 獲得領域類
13.4 利用領域類來組織需求
本章小結
習題
第14章 體系結構和框架
14.1 軟件體系結構的含義
14.2 OO分析和設計的模型
14.3 軟件的體系結構
14.4 框架
14.5 完成一個應用程序的設計
本章小結
習題
參考文獻