模式——工程化實現及擴展(設計模式Java 版)

模式——工程化實現及擴展(設計模式Java 版)

《模式——工程化實現及擴展(設計模式Java 版)》是2012年電子工業出版社出版的圖書。

基本介紹

  • 書名:模式——工程化實現及擴展(設計模式Java 版)
  • ISBN:978-7-121-15638-0
  • 定價:59.00元
  • 出版社:電子工業出版社
出版信息,內 容 簡 介,前 言,目 錄,

出版信息

《模式——工程化實現及擴展(設計模式Java 版)》
王翔 孫遜 著
2012年4月出版
16開
416頁

內 容 簡 介

設計模式不是一門適合空談的技術,它來自於開發人員的工程實踐又服務於工程實踐。
本書並不是一本面向入門者的讀物,因為它需要結合工程實踐介紹如何發現模式靈感、如何套用模式技術。不過作為一本介紹設計模式的書,它並不需要讀者對於龐大的JDK有深入了解,因為擴展主要是結合Java語法完成的,配合書中的實例,相信讀者不僅能夠熟練套用設計模式技術,也能令自己的Java語言上一個台階。
為了降低學習門檻,本書第一部分除了介紹面向對象設計原則外,還充實了一些Java語言的介紹,但這些內容並不是枯燥的講解,讀者可以在閱讀中通過一系列動手練習儘快吸收這些理論並將它們轉化為自己的技能。本書最後一部分的“GOF綜合練習”把各種設計模式做了一次集中展示,目的是讓讀者把分散的模式知識融合在一起,能夠將書本知識真正用於改善一個“準”生產型模組的實現。
本書內容生動,示例貼近中型、大型項目實踐,通過一個個“四兩撥千斤”的示例練習可以讓讀者有一氣讀完的興趣。

前 言

如同每個人都有其個性一樣,每種開發語言也有自己的特點。
項目中,我們固然可以機械地將一種語言的開發經驗套用到另一種語言中,但效果不一定好,因為:
語言有自己的短處:用短處去實現需求不僅費時費力,結果也不理想。
語言有自己的長處:為了沿用以前的經驗而“削足適履”,沒有用到語言的精要,結果暴殄天物。
相信讀者也發現了,用一種語言寫一個套用是一回事,寫好一個套用則完全是另一回事,這就是工程化代碼和“玩具”代碼的區別。教科書上的知識落實到工程上時不能按圖索驥,需要考慮開發語言和目標環境,設計模式也不例外。
也許讀者會覺得本書中很多實現方式與《設計模式》介紹的內容不一致,這是因為《設計模式》一書出版至今已近20年,其間無論是開發語言還是技術平台均已經“換了人間”。GOF 23個模式的思想不僅影響著我們,更影響著走在技術前沿的語言設計者、平台設計者,他們也在工作中潛移默化地把模式思想融入自己的工作成果,作為用戶,我們“推卻”別人的盛情,所有事情都從“車輪”做起,多少有點不經濟。
作為本系列的Java設計模式分冊,我試圖用最Java的方式將自己對於設計模式的理解呈獻給讀者,而且實現上務求簡潔、直接。結構上,本書分為5個部分:
(1)第一部分:預備知識
包括面向對象設計原則中“面向類”的部分、Java語言面向對象擴展特性,以及Java和C#語法特性的簡單對比。
(2)第二部分:創建型模式
主要介紹如何創建對象,如何將客戶程式與創建過程的“變化”有效隔離。
(3)第三部分:結構型模式
從靜態結構出發,分析導致類型結構相互依賴的原因,通過將靜態變化因素抽象、封裝為獨立對象的辦法,梳理對象結構關係。
(4)第四部分:行為型模式
從動態機制出發,分析導致類型調用過程的依賴因素,通過將調用關係、調用過程抽象、封裝為獨立對象的方法,削弱調用過程中的耦合關係。
(5)第五部分:GOF綜合練習
為了便於讀者從整體上體會模式化設計思路和實現技巧,這部分通過一個綜合性的示例向讀者展示如何發現變化、抽象變化、套用模式並最終結合Java SE平台特性落地實現的過程。
不管之前對於模式是否有所嘗試,我希望讀者不妨瀏覽一下這些內容,畢竟模式思想轉化為模式設計思路,再轉化為模式套用技巧是一個漸進的過程,必須實際動手才會加深印象,然後才可能進一步開闊思路。本章示例設計上變化因素較多,需要三類模式的綜合運用,務求能起到拋磚引玉的效果。
感謝多年培養、幫助我的領導和同事們,多年富有挑戰、共同拼搏的項目經歷使我能夠完成這本書。
感謝我和我妻子共同的父母,他們一直給予我無私的關心和照顧,還教會我學會從生活中發掘無窮的技術靈感。
最後,感謝我摯愛的妻子,是她給予我直面挑戰、戰勝挑戰的信心和力量。
受到自己開發年限和項目經驗的限制,本書難免有疏漏和不足之處,希望能夠聽到您的批評和建議。
王翔

目 錄

第一篇 預備知識——發掘Java語言的面向對象設計潛力1
第1章 面向對象設計原則2
第2章 重新研讀Java語言15
第3章 Java和C#43
第二篇 創建型模式—管理對象實例的構造過程62
第4章 工廠及工廠方法模式63
第5章 單件模式82
第6章 抽象工廠模式98
第7章 創建者模式111
第8章 原型模式123
第三篇 結構型模式—組織靈活的對象體系140
第9章 適配器模式141
第10章 橋模式157
第11章 組合模式175
第12章 裝飾模式187
第13章 外觀模式199
第14章 享元模式205
第15章 代理模式215
第四篇 行為型模式—算法、控制流的對象化操作225
第16章 職責鏈模式226
第17章 模板方法模式240
第18章 解釋器模式250
第19章 命令模式270
第20章 疊代器模式286
第21章 中介者模式293
第22章 備忘錄模式305
第23章 觀察者模式320
第24章 狀態模式332
第25章 策略模式343
第26章 訪問者模式349
第五篇 GOF綜合練習360
第27章 GOF部分階段實踐361
附錄A Java和C#關鍵字對照表394

相關詞條

熱門詞條

聯絡我們