編輯推薦
《模式:工程化實現及擴展(設計模式C#版)》第一部分除瞭介紹麵嚮對象設計原則外,還充實瞭一些C#語言的介紹,但這些內容並不是枯燥的講解,讀者可以在閱讀中通過一係列動手練習盡快吸收這些理論並將它們內化為自己的技能。《模式:工程化實現及擴展(設計模式C#版)》最後一部分的“GOF綜閤練習”把各種設計模式做瞭一次集中展示,目的是讓讀者把分散的模式知識融閤在一起,能夠將書本知識真正用於改善一個“準”生産型模塊的實現。
內容簡介
設計模式不是一門適閤空談的技術,它來自於開發人員的工程實踐又服務於工程實踐。
《模式:工程化實現及擴展(設計模式C#版)》並不是一本麵嚮入門者的讀物,因為它需要結閤工程實踐介紹如何發現模式靈感、如何應用模式技術。不過作為一本介紹設計模式的書,它並不需要讀者對於龐大的.NET Framework有深入瞭解,因為擴展主要是結閤C#語法完成的,配閤書中的實例,相信讀者不僅能夠熟練應用設計模式技術,也能令自己的C#語言上一個颱階。
為瞭降低學習門檻,本書第一部分除瞭介紹麵嚮對象設計原則外,還充實瞭一些C#語言的介紹,但這些內容並不是枯燥的講解,讀者可以在閱讀中通過一係列動手練習盡快吸收這些理論並將它們內化為自己的技能。本書最後一部分的“GOF綜閤練習”把各種設計模式做瞭一次集中展示,目的是讓讀者把分散的模式知識融閤在一起,能夠將書本知識真正用於改善一個“準”生産型模塊的實現。
作者簡介
王翔,軟件架構師,主要從事.NET、XML、公鑰基礎設施的開發。專注於數據(尤其是XML信息)的生産、加工、交換、提煉等過程。最近參與瞭一係列有關應用密碼技術和PKI環境保護信息係統數據安全的項目。最喜歡數學,平常案頭總是擺一本數學練習題。閑暇時間喜歡寫作,通過發錶多種技術文章與國內外同行交流各種數據應用經驗。項目間隙經常到各海濱城市徒步旅行、野外露營、齣海航行、極限運動,這幾年烹飪也漸漸成為個人主要愛好。
目錄
第一篇 預備知識——發掘C#語言的麵嚮對象設計潛力
第1章 麵嚮對象設計原則
1.1 說明
1.2 單一職責原則(SRP)
1.3 裏氏替換原則(LSP)和依賴倒置原則(DIP)
1.4 接口隔離原則(ISP)
1.5 迪米特法則(LoD:Law of Demeter、LKP)
1.6 開閉原則(OCP)
1.7 小結
1.8 自我檢驗
第2章 重新研讀C#語言
2.1 說明
2.2 C# 部分語法內容擴展
2.2.1 命名空間(Namespace)
2.2.2 簡潔的異步調用機製——委托(Delegate)和事件(Event)
2.2.3 考驗算法的抽象能力——泛型(Generics)
2.2.4 用貼“標簽”的方式擴展對象特性
2.2.5 可重載運算符(Overloadable Operators)與
轉換運算符(Conversion Operators)
2.3 麵嚮插件架構的配置係統設計
2.3.1 認識.NET Framework提供的主要配置實體類
2.3.2 小結
2.3.3 自我檢驗
2.4 依賴注入
2.4.1 背景介紹
2.4.2 示例情景
2.4.3 構造注入(Constructor)
2.4.4 設值注入(Setter)
2.4.5 接口注入
2.4.6 基於屬性的注入方式(Attributer)
2.4.7 小結
2.4.8 自我檢驗
2.5 連貫接口(Fluent Interface)
第3章 Java和C#
3.1 說明
3.2 枚舉(Enum)
3.3 泛型(Generics)
3.4 屬性和標注(Attribute and Annotation)
3.5 操作符重載和類型轉換重載
3.6 委托、事件、匿名方法
3.7 Lamada和LINQ
3.8 小結
第二篇 創建型模式——管理對象實例的構造過程
第4章 工廠&工廠方法模式
4.1 說明
4.2 簡單工廠
4.2.1 最簡單的工廠類
4.2.2 簡單工廠的局限性
4.3 經典迴顧
4.4 解耦工廠類型與客戶程序
4.5 基於配置文件的工廠
4.5.1 基於配置文件解耦工廠接口和具體工廠類型
4.5.2 基於配置文件解耦工廠類型和具體工作産品
4.6 典型工程化實現
4.7 小結
4.8 自我檢驗
第5章 單件模式
5.1 說明
5.2 經典迴顧
5.3 綫程安全的單件模式
5.4 細節決定成敗
5.5 細顆粒度的單件模式
5.5.1 背景討論
5.5.2 解決桌麵應用中細顆粒度單件模式問題
5.5.3 解決Web應用中細顆粒度單件模式問題
5.6 分布式環境下的單件模式
5.7 單件模式的使用問題
5.8 小結
第6章 抽象工廠模式
6.1 說明
6.2 經典迴顧
6.3 解決經典模式的硬傷
6.4 基於委托的生産外包
6.5 小結
第7章 創建者模式
7.1 說明
7.2 經典迴顧
7.3 為Builder打個標簽
7.4 具有裝配/卸載能力的Builder
7.5 連貫接口形式的Builder
7.6 小結
7.7 自我檢驗
第8章 原型模式
8.1 說明
8.2 經典迴顧
8.3 錶麵模仿還是深入模仿
8.3.1 概念
8.3.2 製作實現剋隆的工具類型
8.3.3 簡單自定義復製過程
8.3.4 細顆粒度自定義復製過程
8.4 小結
8.5 自我檢驗
第三篇 結構型模式——組織靈活的對象體係
第9章 適配器模式
9.1 說明
9.2 經典迴顧
9.3 類型轉換符實現適配
9.4 組適配器
9.5 用配置約定適配過程
9.6 麵嚮數據的適配機製
9.7 小結
9.8 自我檢驗
第10章 橋模式
10.1 說明
10.2 經典迴顧
10.3 分解復雜性的多級橋關係
10.4 看著“圖紙”造橋
10.5 具有約束關係的橋
10.6 小結
10.7 自我檢驗
第11章 組閤模式
11.1 說明
11.2 經典迴顧
11.3 用迭代器遍曆組閤類型
11.4 適於XML信息的組閤模式
11.5 分布式“部分—整體”環境
11.6 小結
11.7 自我檢驗
第12章 裝飾模式
12.1 說明
12.2 經典迴顧
12.3 卸載裝飾
12.4 通過配置和創建者完成裝飾過程
12.5 把裝飾類型做成標簽
12.5.1 更“徹底”的屬性注入
12.5.2 方式1:采用.NET平颱自帶的AOP機製實現
12.5.3 自定義代理攔截框架方式
12.5.4 進一步分析
12.6 小結
第13章 外觀模式
13.1 說明
13.2 經典迴顧
13.3 平颱、開發語言無關的抽象Facade接口——WSDL
13.4 小結
第14章 享元模式
14.1 說明
14.2 經典迴顧
14.3 製訂共享計劃
14.4 通過委托和隊列實現異步享元
14.5 小結
第15章 代理模式
15.1 說明
15.2 經典迴顧
15.3 遠程代理
15.4 小結
第四篇 行為型模式——算法、控製流的對象化操作
第16章 職責鏈模式
16.1 說明
16.2 經典迴顧
16.3 非鏈錶方式定義職責鏈
16.4 小結
第17章 模闆方法模式
17.1 說明
17.2 經典迴顧
17.3 方法的模闆——委托
17.4 類和接口的模闆——泛型
17.5 係統架構的模闆——配置
17.6 小結
17.7 自我檢驗
第18章 解釋器模式
18.1 說明
18.2 經典迴顧
18.3 采用正則錶達式
18.4 采用字典 5
18.5 多級解釋器係統
18.6 用XSD解釋自定義業務語言
18.7 小結
18.8 自我檢驗
第19章 命令模式
19.1 說明
19.2 經典迴顧
19.3 打包命令對象
19.4 異步命令操作
19.5 命令操作隊列
19.6 小結
19.7 自我檢驗
第20章 迭代器模式
20.1 說明
20.2 經典迴顧
20.3 .NET內置的迭代器
20.4 小結
20.5 自我檢驗
第21章 中介者模式
21.1 說明
21.2 經典迴顧
21.3 基於委托和事件的鬆耦閤中介者
21.4 根據配置動態協調通知關係
21.5 小結
21.6 自我檢驗
第22章 備忘錄模式
22.1 說明
22.2 經典迴顧
22.3 把備忘壓棧
22.4 備忘錄的序列化和持久化
22.4 小結
22.5 自我檢驗
第23章 觀察者模式
23.1 說明
23.2 經典迴顧
23.3 .NET內置的觀察者機製——事件
23.4 具有觀察者機製的集閤類型
23.5 麵嚮服務接口的觀察者
23.6 小結
23.7 自我檢驗
第24章 狀態模式
24.1 說明
24.2 經典迴顧
24.3 狀態的序列化和持久化
24.4 主動狀態對象
24.5 用WF完成更易於編排的狀態模式
24.6 小結
24.7 自我檢驗
第25章 策略模式
25.1 說明
25.2 經典迴顧
25.3 策略模式與解釋器模式的協作
25.4 .NET自帶的策略接口
25.5 小結
第26章 訪問者模式
26.1 說明
26.2 經典迴顧
26.3 藉助反射或Dynamic實現訪問者
26.4 用委托實現工程化的訪問者
26.5 小結
26.6 自我檢驗
第五篇 GOF綜閤練習
第27章 GOF部分階段實踐
27.1 迴顧GOF
27.2 需求的提齣
27.3 第一輪技術分析
27.4 第二輪技術分析
27.5 第三輪技術分析
27.6 示例實現
27.7 驗證邏輯的有效性
27.8 小結
27.9 後記
附錄 Java和C#關鍵字對照錶
前言/序言
第一篇 預備知識―發掘C#語言的麵嚮對象設計潛力
第1章 麵嚮對象設計原則
1.1 說明
1.2 單一職責原則(SRP)
1.3 裏氏替換原則(LSP)和依賴倒置原則(DIP)
1.4 接口隔離原則(ISP)
1.5 迪米特法則(Lo D :Law of Demeter、LKP)
1.6 開閉原則(OCP)
1.7 小結
1.8 自我檢驗
1.1 說明
在介紹模式內容之前,我們先談一些有關麵嚮對象的話題。
《模式—工程化實現及擴展》係列的各個分冊,無論是設計模式還是架構模式,前麵其實都應該加上“麵嚮對象的”,即我們談論的是麵嚮對象的設計模式和麵嚮對象的架構模式。
同其他軟件領域一樣,麵嚮對象技術同樣有一些傳承下來的設計原則,它們是眾多麵嚮對象先驅們不斷提煉總結齣來的,這些原則甚至可以被稱為是“規律性”的,因為隨著項目規模的擴大,我們會不斷體會到這些原則的重要性。對於開發人員來說,這些原則的重要性是在一遍遍“撞南牆”的過程中體會到的,是不斷“費力”、“重寫”之後慢慢體會到的。
這些原則同樣體現在各類設計模式、架構模式之中,在學習過程中我們會通過類圖、時序圖、示例代碼等形式不斷體會這些原則解決“依賴”和“變化”的效果。當然,這些“原則”也在變化,不斷有新的“原則”加入,也有在“大浪淘沙”中淘汰掉的,真正沉澱下來的通用“原則”其實並不多。總體來說,麵嚮對象的典型原則可以劃分為兩類—“麵嚮類”的和“麵嚮包”的。
模式:工程化實現及擴展(設計模式C#版) 下載 mobi epub pdf txt 電子書
評分
☆☆☆☆☆
書有點枯燥,但也不指望理論的東西能太有趣味
評分
☆☆☆☆☆
書寫的還行,實現語言也是我用的C#,不錯
評分
☆☆☆☆☆
本書的作者王翔有多年的開發經驗,參與過多個韆萬乃至十億行代碼的大工程,他將經驗融於設計模式中,以c}}重新實現瞭GOF的模式,同時加入瞭新近的設計想法,如SOA與Web Setvices等,以及相對於其他設計模式而言較新的.NET Framework實現技術,如泛型、3.0的WCF等。在本書中他除瞭正嚮地以C#展現多個不同用途的模式外,還提供瞭日後可重復驗證與測試的單元測試碼。
評分
☆☆☆☆☆
評分
☆☆☆☆☆
評分
☆☆☆☆☆
然而,你不會一開始就做大係統,那樣風險太高。因此,要練習,最好從小係統開始使用模型與架構,這樣纔能檢討與學習,日後方能在大係統中自如運用。
評分
☆☆☆☆☆
搞活動的時候買的,,當時一激動買多啦
評分
☆☆☆☆☆
幫朋友購買,據說書挺不錯!
評分
☆☆☆☆☆
無破損,應該是新書,2012版本,期待…