編輯推薦
《模式:工程化實現及擴展(設計模式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}}重新實現瞭GOF的模式,同時加入瞭新近的設計想法,如SOA與Web Setvices等,以及相對於其他設計模式而言較新的.NET Framework實現技術,如泛型、3.0的WCF等。在本書中他除瞭正嚮地以C#展現多個不同用途的模式外,還提供瞭日後可重復驗證與測試的單元測試碼。
評分
☆☆☆☆☆
古人雲:“書中自有黃金屋,書中自有顔如玉。”可見,古人對讀書的情有獨鍾。其實,對於任何人而言,讀書最大的好處在於:它讓求知的人從中獲知,讓無知的人變得有知。讀史蒂芬?霍金的《時間簡史》和《果殼中的宇宙》,暢遊在粒子、生命和星體的處境中,感受智慧的光澤,猶如攀登高山一樣,瞬間眼前呈現齣仿佛九疊畫屏般的開闊視野。於是,便像李白在詩中所寫到的“廬山秀齣南鬥旁,屏風九疊雲錦張,影落明湖青黛光”。 對於坎坷麯摺的人生道路而言,讀書便是最佳的潤滑劑。麵對苦難,我們苦悶、彷徨、悲傷、絕望,甚至我們低下瞭曾經高貴驕傲的頭。然而我們可否想到過書籍可以給予我們希望和勇氣,將慰藉緩緩注入我們乾枯的心田,使黑暗的天空再現光芒?讀羅曼?羅蘭創作、傅雷先生翻譯的《名人傳》,讓我們從偉人的生涯中汲取生存的力量和戰鬥的勇氣,更讓我們明白:唯有真實的苦難,纔能驅除羅曼諦剋式幻想的苦難;唯有剋服苦難的悲劇,纔能幫助我們擔當起命運的磨難。讀海倫?凱勒一個個真實而感人肺腑的故事,感受遭受不濟命運的人所具備的自強不息和從容豁達,從而讓我們在並非一帆風順的人生道路上越走越勇,做命運真正的主宰者。在書籍的帶領下,我們不斷磨煉自己的意誌,而我們的心靈也將漸漸充實成熟。 讀書能夠蕩滌浮躁的塵埃汙穢,過濾齣一股沁人心脾的靈新之氣,甚至還可以營造齣一種超凡脫俗的嫻靜氛圍。讀陶淵明的《飲酒》詩,體會“結廬在人境,而無車馬喧”那種置身鬧市卻人靜如深潭的境界,感悟作者高深、清高背後所具有的定力和毅力;讀世界經典名著《巴黎聖母院》,讓我們看到如此醜陋的卡西莫多卻能夠擁有善良美麗的心靈、淳樸真誠的品質、平靜從容的氣質和不卑不亢的風度,他的內心在時間的見證下摺射齣耀人的光彩,使我們在尋覓美的真諦的同時去追求心靈的高尚與純潔。讀王濛的《寬容的哲學》、林語堂的《生活的藝術》以及古人流傳於世的名言警句,這些都能使我們擁有誠實捨棄虛僞,擁有充實捨棄空虛,擁有踏實捨棄浮躁,平靜而坦然地度過每一個晨曦每一個黃昏。
評分
☆☆☆☆☆
老公要的書,看的時候也發現瞭編輯問題,老公稱看到有錯的挺煩心,使書大打摺扣
評分
☆☆☆☆☆
內容就不說瞭,想買這本書很久瞭,一直沒時間看,也就沒買,紙質很不錯
評分
☆☆☆☆☆
項目需要,提高中......
評分
☆☆☆☆☆
易懂,是正版,理論知識豐富。
評分
☆☆☆☆☆
沒買到他那本厚的。就買這個瞭。
評分
☆☆☆☆☆
等瞭三天纔送到,書還是破的