-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
12/13 新書到! 10/8 新書到! 10/1 新書到! 9/24 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

設計模式—基於C#的工程化實現及擴展

( 簡體 字)
作者:王翔類別:1. -> 程式設計 -> .NET -> C#
譯者:
出版社:電子工業出版社設計模式—基於C#的工程化實現及擴展 3dWoo書號: 17150
詢問書籍請說出此書號!

缺書
不接受訂購

出版日:12/1/2008
頁數:0
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
不接受訂購
ISBN:9787121075070
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

本書基于C# 2.0的語法,試圖將GOF 23中的模式以一種可工程化的公共庫而非Example的方式呈現給讀者。內容包括以下7部分。
第1篇主要是概括性的介紹;第2篇創建型模式介紹通過將實例化職責委托他方對象的辦法,隔離客戶程序與具體類型實例化的依賴關系,保證客戶程序(或者外部系統)獲得期望具體類型實例的、同時不必發生直接的引用;第3篇結構型模式的重點在于如何通過靈活的體系組織不同的對象,并在此基礎上完成更為復雜的類型(或者類型系統),而參與組合的各類型之間始終保持盡量松散的結構關系;第4篇行為型模式關注于應用運行過程中算法的提供和通信關系的梳理;第5篇主要介紹小顆粒度基礎模式和應用案例;第6篇主要介紹應用全局的模式化的實現方法,包括現在已經被普遍應用的N層模式及某些關鍵性框架產品采用的“微內核”模式;第7篇主要是一些針對Web和Web Service領域的模式設計技術。
本書主要針對對C#語言和.NET Framework平臺有一定了解或有一定應用經驗的用戶,尤其適于那些希望運用模式技術在設計和開發方面多應對些挑戰的用戶。
目錄:

導讀 I
第1篇 預備知識——發掘用C#語言進行面向對象化設計的潛力 1
第1章 重新研讀C#語言 3
1.1 說明 4
1.2 C# 部分語法內容擴展 4
1.2.1 命名空間(Namespace) 4
1.2.2 簡潔的異步通知機制——委托(Delegate) 6
1.2.3 考驗你的算法抽象能力——泛型(Generics) 12
1.2.4 用作標簽的方式擴展對象特性——屬性(Attribute) 18
1.2.5 用索引器簡化的C#類型信息訪問 22
1.2.6 融入C#語言的迭代機制——迭代器(Iterator) 29
1.3 可重載運算符(Overloadable Operators)與轉換運算符(Conversion Operators) 35
1.3.1 The Day After Someday 35
1.3.2 用于有限的狀態迭代 35
1.3.3 操作集合 36
1.3.4 類型的適配 37
1.3.5 小結 38
1.4 面向插件架構和現場部署的配置系統設計 39
1.4.1 認識.NET Framework提供的主要配置實體類 40
1.4.2 應用實例 41
1.4.3 小結 48
1.5 實現依賴注入 48
1.5.1 背景介紹 48
1.5.2 示例情景 48
1.5.3 Constructor注入 51
1.5.4 Setter注入 51
1.5.5 接口注入 52
1.5.6 基于Attribute實現注入——Attributer 53
1.5.7 小結 55
第2章 開始每個設計模式之前 57
2.1 new()的替代品 59
2.2 準備一個輕量的內存Cache 61
2.3 準備一個集中訪問配置文件的Broker 64
2.4 Web?Not Web? 67
2.5 小結 71
第2篇 創建型模式——管理并隔離對象實例的構造過程 73
第3章 工廠&工廠方法模式 75
3.1 簡單工廠 76
3.1.1 最簡單的工廠類 76
3.1.2 根據規格加工產品——參數化工廠 79
3.1.3 簡單工廠的局限性 80
3.2 經典回顧 80
3.3 解耦Concrete Factory與客戶程序 82
3.4 基于配置文件的Factory 83
3.5 批量工廠 85
3.5.1 開發情景 85
3.5.2 定義產品類型容器 87
3.5.3 定義批量工廠和產品類型容器 88
3.5.4 增設生產指導顧問——Director 89
3.5.5 由Director指導的客戶程序 90
3.6 基于類型參數的Generic Factory 91
3.7 委托工廠類型 94
3.8 小結 95
第4章 單件模式 97
4.1 經典回顧 99
4.2 線程安全的Singleton 102
4.3 細節決定成敗 103
4.4 細顆粒度Singleton 105
4.4.1 背景討論 105
4.4.2 解決桌面應用中細顆粒度Singleton問題 105
4.4.3 解決Web應用中細顆粒度Singleton問題 107
4.4.4 更通用的細顆粒度Singleton 108
4.5 自動更新的Singleton 110
4.6 參數化的Singleton 110
4.7 跨進程的Singleton 112
4.8 Singleton的擴展——Singleton-N 114
4.8.1 定義具有執行狀態的抽象對象 115
4.8.2 定義相應的Singleton-N實例集合 115
4.8.3 在基本Singleton模式實現的框架下引入實例集合 116
4.9 引入配置文件管理Singleton 117
4.10 基于類型參數的Generic Singleton 118
4.11 由工廠類型協助Singleton實例管理 119
4.12 小結 120
第5章 抽象工廠模式 121
5.1 經典回顧 122
5.2 按計劃實施生產 125
5.2.1 為抽象工廠補充類型映射器 125
5.2.2 處理模式的硬傷 127
5.3 定義計劃與生產間的映射關系 128
5.3.1 分析 128
5.3.2 登記映射關系 129
5.3.3 用TypeMapper協助工廠生產 129
5.3.4 定義實體TypeMapper和實體工廠 130
5.3.5 實現裝配機制 130
5.4 配置生產計劃 131
5.5 基于Delegate的生產外包 134
5.6 小結 136
第6章 創建者模式 139
6.1 經典回顧 141
6.2 異步調用的BuildUp() 143
6.3 為Builder打個標簽 146
6.3.1 完成工具類 146
6.4 具有裝配/卸裁能力的Builder 150
6.5 看著圖紙加工——登記配置文件 152
6.5.1 把UML的對象變成XSD 152
6.5.2 把握梗概——刪除不經常變化的內容 154
6.5.3 映射為配置節點或配置元素 155
6.5.4 實現實體對象 155
6.5.5 完成流水線生產 158
6.6 用迭代器控制流水線 159
6.7 小結 161
第7章 原型模式 163
7.1 經典回顧 164
7.2 表面模仿還是深入模仿 168
7.2.1 概念 168
7.2.2 制作實現克隆的工具類型 169
7.2.3 克隆也要稍微保留點個性 171
7.2.4 定制并管理的克隆過程 172
7.3 重新定義原型方法 173
7.4 同時支持XML和二進制序列化的泛型集合類型處理 174
7.5 小結 179
第3篇 結構型模式——針對變化組織靈活的對象體系 181
第8章 適配器模式 183
8.1 說明 184
8.2 經典回顧 185
8.3 進一步擴展適配范圍的組適配器 187
8.4 Adapter——Adapter互聯模式 190
8.4.1 分析 190
8.4.2 方式1:客戶程序直接調度Adapter 192
8.4.3 方式2:基于標準約定調度Adapter 192
8.4.4 方式3:借助反射和約定完成異步調用 193
8.5 用配置約定適配過程 194
8.6 XML數據的專用適配機制 196
8.7 小結 198
第9章 橋模式 199
9.1 說明 200
9.2 經典回顧 201
9.3 將復雜性進一步分解后的多級橋關系 204
9.4 看著“圖紙”造橋 207
9.5 具有約束關系的橋 209
9.6 小結 211
第10章 組合模式 213
10.1 說明 214
10.2 經典回顧 215
10.3 用迭代器遍歷組合類型 218
10.4 適于XML信息的組合模式 220
10.5 小結 223
第11章 裝飾模式 225
11.1 說明 226
11.2 經典回顧 226
11.3 具有自我更新特征的裝飾模式 230
11.3.1 分析 230
11.3.2 抽象裝飾接口 231
11.3.3 抽象狀態接口 232
11.3.4 依據當前狀態修改裝飾 233
11.3.5 測試驗證 233
11.4 設計Decorator與Builder協作的產物 234
11.5 把Decorator做成標簽 236
11.5.1 更“徹底”的Attribute注入 236
11.5.2 方式1:采用.NET平臺自帶的AOP機制實現 237
11.5.3 方式2:自定義代理攔截框架方式 239
11.5.4 進一步分析 242
11.6 小結 243
第12章 外觀模式 245
12.1 說明 246
12.2 經典回顧 246
12.3 Facade接口 249
12.4 Remote Facade 250
12.5 面向性能考慮的升級版Remote Facade——Data Transfer Object模式 253
12.6 平臺、開發語言無關的抽象Facade接口——WSDL 256
12.7 讓使用者更加方便的Fluent Interface設計 257
12.8 小結 258
第13章 享元模式 259
13.1 說明 260
13.2 經典回顧 261
13.3 制訂共享計劃 263
13.4 綜合性的共享體系——Object Pool 264
13.4.1 應用背景 264
13.4.2 總體技術結構 264
13.4.3 抽象類型實體設計 265
13.4.4 享元模式的典型應用——緩沖 266
13.4.5 示例 266
13.5 用于并行處理的線程級享元 269
13.6 通過Delegate和隊列實現異步Flyweight 270
13.7 小結 271
第14章 代理模式 273
14.1 說明 274
14.2 經典回顧 274
14.3 遠程訪問代理 276
14.3.1 第1步:定義遠程訪問的服務協議 277
14.3.2 第2步:定義服務端的配置文件及相應的宿主程序 277
14.3.3 第3步:生成客戶端遠程代理(Proxy)類型 278
14.3.4 第4步:編寫客戶端程序 279
14.4 數據訪問代理 279
14.5 對象緩存代理 282
14.6 為代理過程增加預處理和后續處理的支持 284
14.6.1 第1步:定義外部處理機制的抽象結構 285
14.6.2 第2步:定義新增處理的配置信息 286
14.6.3 第3步:定義配置解析對象 286
14.6.4 第4步:修正服務端和代理類的處理過程 287
14.7 小結 288
第4篇 行為型模式——算法、控制流和通信關系的對象化處理 289
第15章 職責鏈模式 291
15.1 說明 292
15.2 經典回顧 292
15.3 用斷點控制鏈式過程 295
15.4 鏈式反應 298
15.5 增加配置約束 300
15.6 小結 303
第16章 模板方法模式 305
16.1 說明 306
16.2 經典回顧 306
16.3 滿足多套模板要求 308
16.4 方法的模板——Delegate 311
16.5 類型的模板——Generic 312
16.6 用配置勾勒的模板 313
16.7 小結 314
第17章 解釋器模式 315
17.1 說明 316
17.2 經典回顧 317
17.3 采用正則表達式 320
17.4 采用字典 324
17.5 采用XSD 328
17.6 用XSD解釋定制的業務語言 329
17.7 小結 330
第18章 命令模式 331
18.1 說明 332
18.2 經典回顧 333
18.3 輕量級的Command——委托 336
18.4 異步Command 337
18.5 把Command打包 341
18.5.1 外觀模式方式 342
18.5.2 組合模式方式 343
18.6 把Command排隊 345
18.7 小結 347
第19章 迭代器模式 349
19.1 說明 350
19.2 經典回顧 351
19.3 C#化的Iterator 353
19.4 小結 354
第20章 中介者模式 355
20.1 說明 356
20.2 經典回顧 358
20.3 基于Delegate和事件的松耦合Mediator 362
20.4 根據配置動態協調通知關系 365
20.5 SOAP Mediator 366
20.6 小結 367
第21章 備忘錄模式 369
21.1 說明 370
21.2 經典回顧 371
21.3 把備忘壓棧 376
21.4 Memento的序列化和持久化 378
21.5 小結 381
第22章 觀察者模式 383
22.1 說明 384
22.2 經典回顧 386
22.3 .NET內置的Observer機制——事件 391
22.4 具有Observer的集合類型 392
22.5 面向服務接口的Observer 394
22.6 小結 397

第23章 狀態模式 399
23.1 說明 400
23.2 經典回顧 401
23.3 State的序列化和持久化 405
23.4 主動方式State 407
23.5 觸發式State 408
23.6 涉及用戶交互的狀態流轉 410
23.7 用WF完成更易于編排的State 410
23.8 小結 412
第24章 策略模式 413
24.1 說明 414
24.2 經典回顧 415
24.3 Strategy與Interpreter協作 417
24.4 充分利用.NET Framework自帶的Strategy接口 418
24.5 動態策略 421
24.6 小結 422
第25章 訪問者模式 423
25.1 說明 424
25.2 經典回顧 424
25.3 借助反射實現Visitor 428
25.4 用委托使引用關系更加松散 430
25.5 小結 430
第5篇 小顆粒度基礎模式和應用案例——服務于細節的基礎性模式 431
第26章 成例 433
26.1 說明 434
26.2 Partial Class 434
26.2.1 體現組合關系 434
26.2.2 從多個側面刻畫類型 435
26.2.3 與Visual Studio Add-ins的結合 436
26.2.4 小結 437
26.3 Gateway 437
26.3.1 封裝本地API的Gateway 438
26.3.2 封裝非C#語言訪問接口 440
26.3.3 封裝通用操作方法 440
26.3.4 小結 443
26.4 Mapper 443
26.4.1 介紹 443
26.4.2 數據對象映射器 445
26.4.3 小結 450
26.5 Registry 451
26.6 Value Object 455
26.7 通用數據載體DataSet和DataTable 457
26.8 Context 458
第27章 GOF總結及應用案例 461
27.1 GOF總結 462
27.1.1 回顧GOF 462
27.2 應用案例需求說明 462
27.3 發現和分析 463
27.4 模式應用 466
27.4.1 已經采用的模式 466
27.4.2 如何實現與具體數據源無關 466
27.4.3 提供執行前后定制處理的能力 476
27.4.4 設計一個結構更加靈活的連接串配置訪問機制 477
27.5 小結 482
第6篇 部分架構模式——面向應用全局的模式化處理 483
第28章 MVC模式 485
28.1 說明 486
28.2 模式介紹 487
28.3 示例 489
28.3.1 混合方式 489
28.3.2 分解對象職責 490
28.3.3 主動方式M/V/C 492
28.4 小結 495
第29章 管道—過濾器模式 497
29.1 說明 498
29.2 登機的管道流程 499
29.2.1 數據源發起的推方式 500
29.2.2 數據接收方發起的拉方式 501
29.2.3 中介對象發起的推拉混合方式 502
29.2.4 數據源/數據接收方分別發起的銜接方式 503
29.3 示例 504
29.3.1 推方式示例 504
29.3.2 增加主動方式的Filter 508
29.4 小結 509
第30章 出版—預訂模式 511
30.1 說明 512
30.2 生活中無處不在的“預訂” 512
30.2.1 面向單一主題的本地觀察者模式 512
30.2.2 增加Proxy實現面向單一主題的分布式觀察者模式 513
30.2.3 用出版者集中管理預訂 514
30.2.4 面向物理環境設計更多出版預訂模式 517
30.3 示例 518
30.3.1 數據實體模型部分 518
30.3.2 業務實體模型部分 521
30.3.3 具體實體對象部分 523
30.3.4 單元測試 527
30.4 小結 528
第31章 Broker模式 531
31.1 說明 532
31.2 越來越龐雜的分布式系統交互之感 533
31.3 示例 536
31.4 小結 539
第32章 消息總線模式 541
32.1 說明 542
32.2 用總線梳理企業系統環境 544
32.2.1 分隔區域條件下的消息總線 547
32.3 小結 547
第7篇 部分Web和Web Service模式——面向服務開發中的模式化處理 549
第33章 頁面控制器模式 551
33.1 說明 552
33.2 用對象化思維抽象和擴展頁面操作邏輯 553
33.3 示例 554
33.4 小結 555
第34章 實現Web服務依賴倒置 557
34.1 Web Service的模式化特征 558
34.2 第一層的包裝 559
34.2.1 Aggregation 560
34.2.2 Contain 561
34.3 SOA環境下典型的Web Service開發方式 561
34.4 依賴倒置原則及其在Web Service中的應用 562
34.4.1 分析 564
34.4.2 實現示例 565
34.5 基于WCF的工程化實現 571
34.5.1 實現示例 571
34.5.2 借助WCF擴展服務的對象化特征 574
34.6 小結 576
第35章 Web服務適配器模式 577
35.1 說明 578
35.2 Web Service下的接口適配問題 578
35.2.1 常規情景分析 578
35.2.2 Web Service間連續交互適配 579
35.2.3 實施方式 580
35.3 采用標準Web Service類型的示例 581
35.3.1 單純數據XSD適配 581
35.3.2 服務方法兼容性適配 586
35.3.3 其他說明 588
35.4 采用WCF的示例 588
35.4.1 用Data Contract定義數據Schema 589
35.4.2 定義不同的類型轉換方式示例 590
35.5 小結 592
第36章 Web服務數據傳輸對象模式 593
36.1 說明 594
36.2 Web Service接口批量交互中的性能問題 595
36.2.1 DTO對象 595
36.2.2 DTO與消費者服務的對應關系 595
36.2.3 部署設計考慮 597
36.2.4 結構 597
36.3 示例 598
36.3.1 沒有DTO對象的情況 599
36.3.2 增加DTO對象的情況 601
36.4 小結 602
36.5 附件 603
36.5.1 實現DTO數據裝載的兩種方式 603
第37章 Web服務事件監控器模式 605
37.1 說明 606
37.2 如何為普通Web Service封裝事件機制 607
37.3 示例 609
37.4 小結 613
第38章 Web服務攔截過濾器模式 615
38.1 說明 616
38.2 通過攔截完成自定義特性的透明擴展 617
38.2.1 實現方式 617
38.2.2 .NET平臺的實現技術 620
38.3 示例 621
38.3.1 基于ASP.NET Web Service的IHttpModule方式 621
38.3.2 基于WCF自定義攔截方式 623
38.4 小結 626
附錄A 面向關系數據和XML數據的領域邏輯模式 627
A.1 說明 628
A.2 實現業務領域邏輯的主要方法 628
A.2.1 整體邏輯結構 628
A.2.2 性能改進 629
A.2.3 面向關系數據庫的業務服務設計 630
A.2.4 面向XML數據的擴展設計 630
A.2.5 配置機制設計 631
A.3 示例 632
A.3.1 示例情景 632
A.3.2 測試內容準備 633
A.3.3 實際測試過程 634
A.4 小結 635
附錄B 基于XML的應用建模 637
B.1 說明 638
B.2 世界是平的,但更是多元的 638
B.2.1 更具擴展性的數據模型——XML 638
B.2.2 讓非結構化數據可以被識別 642
B.2.3 應對數據和內容的集成 644
B.2.4 新的應用擴展 647
B.2.5 應對語義網絡的復雜性 649
B.3 小結 650
索引 651
序: