建構可擴展、易維護的物件導向軟體
「從昨天翻開這本書的第一頁開始,我就停不下來了!這本書超酷的,它不僅有趣、涵蓋許多層面,也切中要點,實在令人印象深刻。」
—Erich Gamma
—IBM傑出工程師、《Design Patterns》作者之一
「彷彿從我的腦海中卸下一千磅重的書。」
—Ward Cunningham
維基百科的發明者,Hillside Group創始人
「《深入淺出設計模式》結合有趣、令人捧腹大笑的元素、深刻的見解和技術,以及實用建議,是一本有趣且引人深思的讀物。」
—Richard Helm
《Design Patterns》作者之一
你將從本書學到什麼?
因為你不想重新發明輪子,所以尋求設計模式的協助。設計模式是曾經遇到同樣設計問題的人學到的經驗。掌握設計模式,你就可以利用他人的經驗和最佳做法,把寶貴的時間用在更有挑戰性、更有趣的事情上。本書將告訴你重要的模式有哪些、使用它們的時機和理由、如何在自己的設計裡面運用,以及它們根據哪些物件導向設計原則。《深入淺出設計模式》已經協助數以萬計的開發者提升物件導向設計技術了,快點加入我們吧!
這本書為何如此與眾不同?
如果你曾經閱讀任何一本《深入淺出》系列,你應該可以預期你會看到什麼內容—為大腦量身打造的豐富視覺效果。用《深入淺出設計模式 第二版》來學習設計模式可以讓你遠離瞌睡蟲的干擾,讓你更擅長解決軟體設計問題,以及使用設計模式術語和同事們溝通。
作者
Eric Freeman
關於Eric,《深入淺出》系列的另一位作者Kathy Sierra說他是「極少數精通各種領域的語言、實踐法和文化的人之一,他涉及的領域包括文青駭客、企業協理、工程師和智庫。」
在教育訓練方面,Eric是一位電腦科學家,獲得耶魯大學的博士學位。在職業方面,Eric曾經是華德迪斯耐公司旗下Disney Online&Disney.com的CTO。
現在Eric是《深入淺出》系列的協助指導,並致力於建立WickedlySmart的印刷品和影片內容,遍布主流的教育頻道。
Eric寫過的《深入淺出》系列包括《深入淺出設計模式》、《深入淺出HTML&CSS》、《深入淺出 JavaScript程式設計》、《深入淺出HTML5程式設計》,以及《深入淺出學會編寫程式》。
Eric現居於德州,奧斯汀。
Elisabeth Robson
Elisabeth是軟體工程師、作家和訓練師。她在耶魯大學就學時就對科技充滿熱情,並且在那裡獲得電腦科學碩士學位。
她是WickedlySmart的創辦人之一,目前她在那裡負責創作書籍、文章、影片…等。她在O’Reilly Media擔任特別專案主管時,曾經舉辦各種技術的現場研討會和線上課程,進而愛上創造學習體驗來協助人們了解技術。
如果Elisabeth不在電腦的前面,她會出外散步、騎自行車、划船、植花蒔草,通常帶著相機。
目錄
1 設計模式簡介:設計模式歡迎您!
2 觀察者模式:讓你的物件掌握現況
3 裝飾器模式:裝飾物件
4 工廠模式:烘焙 OO 的精華
5 單例模式:獨一無二的物件
6 命令模式:封裝呼叫
7 轉接器與門面模式:隨機應變
8 樣板方法模式:封裝演算法
9 迭代器與組合模式:井然有序的集合
10 狀態模式:事物的狀態
11 代理模式:控制與物件的接觸
12 複合模式:在模式中的模式
13 與設計模式融洽相處:真實世界的模式
14 附錄:遺珠之憾