分析模式:可複用的物件模型
基本資料
作者: (英) Martin Fowler
譯者: 樊東平;張路[同譯者作品]
出版社:機械工業出版社
ISBN:9787111305309
上架時間:2010-5-10
出版日期:2010 年6月
開本:16開
更多詳細資料請查看:http://www.china-pub.com/196704
內容簡介
本書的作者Martin Fowler是國際著名的OO專家,敏捷開發方法的創始人之一,現為ThoughtWorks公司的首席科學家,本書是作者的代表作之一,深受業界專業人士和廣大讀者的好評,經久不衰。
本書講述各種分析模式(即來自概念性業務模型的模式)和支援模式(即講述如何流量分析模式的輔助性模式),把論述重點放在介紹物件導向分析和設計的最終結果—即模型本身。作者透過平實樸素的語言,將自己豐富的對象建模經驗與讀者分享,使讀者可以馬上採納這些經驗性模式。
本書適合的讀者範圍非常廣:物件導向的電腦分析人員和設計人員(尤其是那些參與系統分析的人員)、資料建模人員、編程人員以及專業的軟體工程師都可以從本書中獲得寶貴的知識和經驗。
目錄
Ralph Johnson序
Ward Cunningham序
前言
第1章 緒論 1
1.1 概念性模型 1
1.2 模式世界 4
1.2.1 Christopher Alexander 5
1.2.2 描述格式 5
1.2.3 關於模式的抽象程度 6
1.3 本書中的模式 7
1.3.1 建模執行個體 8
1.3.2 模式的來源 8
1.3.3 跨領域的模式 9
1.4 概念性模型與業務過程重組 9
1.5 模式與架構 10
1.6 本書的使用 11
第一部分 分析模式
第2章 責任模式 17
2.1 團體 18
2.2 組織層次 19
.2.3 組織圖 21
2.4 責任 22
2.5 責任知識級 24
2.6 團體類型泛化 26
2.7 層次型責任 27
2.8 操作範圍 29
2.9 職位 31
第3章 觀察和測量模式 33
3.1 數量 34
3.2 轉換率 36
3.3 複合單位 37
3.4 測量 38
3.5 觀察 40
3.6 觀察概念的子類型化 43
3.7 觀察方案 44
3.8 雙時間記錄 44
3.9 被否決的觀察 45
3.10 臨床觀察、假設與推理 45
3.11 關聯觀察 46
3.12 觀察過程 48
第4章 針對公司財務的觀察模式 52
4.1 企業片斷 53
4.1.1 定義維度 57
4.1.2 維度屬性以及企業片斷 59
4.2 測量方案 60
4.2.1 保持計算的有效性 61
4.2.2 比較和因果測量方案 62
4.2.3 狀態類型:定義計劃的和實際的狀態 63
4.2.4 構造測量 66
4.2.5 維度合并 66
4.3 範圍 69
4.4 帶範圍的現象 70
4.4.1 帶範圍屬性的現象 71
4.4.2 範圍函數 73
4.5 使用最終架構 75
第5章 引用對象 77
5.1 名稱 77
5.2 標識方案 79
5.3 對象合并 81
5.3.1 複製並替換 82
5.3.2 替代 82
5.3.3 本質/表象 83
5.4 對象等價 83
第6章 庫存與賬務 85
6.1 賬目 87
6.2 事務 88
6.3 匯總賬目 90
6.4 備忘賬目 92
6.5 記入規則 93
6.5.1 可逆性 94
6.5.2 不使用事務 94
6.6 個體執行個體方法 95
6.6.1 使用singleton類實現 95
6.6.2 使用原則模式實現 96
6.6.3 使用內部case語句實現 97
6.6.4 使用參數化方法實現 98
6.6.5 使用解譯器實現 98
6.6.6 實現方式的選擇 99
6.7 記入規則的執行 99
6.7.1 急切觸發 99
6.7.2 基於賬目的觸發 101
6.7.3 基於記入規則的觸發 102
6.7.4 向後鏈式觸發 102
6.7.5 觸發手段的比較 102
6.8 多個賬目的記入規則 103
6.9 選擇條目 106
6.10 賬務實踐 107
6.11 條目來源 109
6.12 結算單和所得計算書 110
6.13 對應賬目 111
6.14 專門化的賬目模型 112
6.15 登記條目到多個賬目 113
6.15.1 使用備忘賬目 116
6.15.2 派生賬目 116
進一步閱讀 118
第7章 使用財務模型 119
7.1 結構模型 120
7.2 結構的實現 122
7.3 設定新的電話語音 124
7.4 建立通話 126
7.5 實現基於賬目的觸發 127
7.6 把電話分成白天和夜晚兩類 128
7.7 按時間收費 130
7.8 計算稅金 133
7.9 結論 134
7.9.1 記入規則的結構 134
7.9.2 什麼時候不能使用架構 136
7.9.3 賬務實踐圖 137
第8章 計劃 139
8.1 提議和執行的動作 140
8.2 完成和放棄的動作 141
8.3 掛起 142
8.4 計劃 143
8.5 方案 146
8.6 資源分派 149
8.7 輸出和啟動函數 153
第9章 交易 156
9.1 合約 156
9.2 合約夾 160
9.3 報價 165
9.4 情境 168
第10章 派生合約 176
10.1 期貨合約 177
10.2 期權 179
10.2.1 多頭、空頭、看漲和看跌:體現一種謀略的詞彙 181
10.2.2 子類型化或者非子類型化 182
10.3 產品 184
10.4 子類型狀態機器 188
10.4.1 確保狀態圖的一致 190
10.4.2 一致性的使用問題 192
10.5 並行的應用和領域階層 194
10.5.1 套用面板的類型檢查 195
10.5.2 給超類型一個封裝性介面 196
10.5.3 使用一個運行時屬性 196
10.5.4 使套用面板對領域模型可見 198
10.5.5 使用異常處理 199
第11章 交易包 201
11.1 對一個包的多重存取層級 201
11.2 相互可見度 205
11.3 包的子類型化 208
11.4 結論 209
第二部分 支援模式
第12章 資訊系統的分層構架 213
12.1 兩層構架 214
12.2 三層構架 215
12.3 展示層和應用邏輯層 218
12.3.1 展示層/應用邏輯層分離的優點 222
12.3.2 在客戶/伺服器環境中伸展外觀 222
12.4 資料庫互動 224
12.4.1 把領域層串連到資料來源 224
12.4.2 資料庫介面層 225
12.5 結論 227
第13章 套用面板 229
13.1 一個醫學保健樣本 229
13.2 外觀的內容 231
13.2.1 方法的類型 232
13.2.2 樣本方法 233
13.3 公用方法 234
13.4 操作 235
13.5 類型轉換 236
13.6 多重外觀 237
第14章 類型模型的模式—設計範本 240
14.1 實現關聯 242
14.1.1 雙向關聯和單向關聯 243
14.1.2 關聯的介面 243
14.1.3 基礎類型 245
14.1.4 實現一個單向關聯 246
14.1.5 在兩個方向上都使用指標的雙向實現 246
14.1.6 在一個方向上使用指標的雙向實現 247
14.1.7 使用關聯對象的雙向實現 248
14.1.8 雙向實現的比較 248
14.1.9 派生映射 249
14.1.10 非集合映射 249
14.2 實現泛化 249
14.2.1 用繼承實現 249
14.2.2 用多重繼承組合類別實現 250
14.2.3 用標誌實現 250
14.2.4 用委託給一個隱藏類來實現 251
14.2.5 通過建立一個替換來實現 253
14.2.6 泛化的介面 254
14.2.7 實現hasType操作 255
14.3 對象建立 255
14.3.1 建立的介面 256
14.3.2 建立的實現 256
14.4 對象析構 256
14.4.1 析構的介面 257
14.4.2 析構的實現 257
14.5 進入點 258
14.5.1 尋找對象的介面 259
14.5.2 尋找操作的實現 260
14.5.3 使用類或者登記表對象 260
14.6 實現約束 260
14.7 其它技術的設計範本 261
第15章 關聯模式 263
15.1 關聯類別型 264
15.2 帶索引值的映射 266
15.3 曆史映射 268
第16章 後記 273
第三部分 附 錄
附錄A 技術和符號 277
附錄B 模式列表 293
索引 301