你知道你不想重新發(fā)明輪子,因此你指望設(shè)計模式能幫上忙——那些面對相同軟件設(shè)計問題的人所學(xué)到的教訓(xùn)。有了設(shè)計模式,你就可以借助他人的最佳實踐和經(jīng)驗,把時間花在一些更有挑戰(zhàn)性、更有趣的事情上。本書展示了重要的模式;何時使用、為什么使用這些模式;如何在自己的設(shè)計中應(yīng)用這些模式;模式所基于的面向?qū)ο笤O(shè)計原則。無數(shù)開發(fā)人員通過這本書提升了面向?qū)ο笤O(shè)計技能,來加入他們的隊伍吧。
Eric是一名計算機科學(xué)家,在耶魯大學(xué)獲得博士學(xué)位。工作上,Eric是迪士尼公司Disney Online & Disney.com部門的前CTO。 Elisabeth是一名軟件工程師、作家和培訓(xùn)師。從她是耶魯大學(xué)的學(xué)生開始,她就對技術(shù)很狂熱。在耶魯大學(xué),她獲得了計算機科學(xué)碩士學(xué)位。
前言 xxv
1 歡迎來到設(shè)計模式:設(shè)計模式介紹 1
2 讓你的對象保持消息靈通:觀察者模式 37
3 裝飾對象:裝飾者模式 79
4 用OO的精髓做烘焙:工廠模式 109
5 獨一無二的對象:單件模式 169
6 封裝調(diào)用:命令模式 191
7 隨遇而安:適配器和外觀模式 237
8 封裝算法:模板方法模式 277
9 管理良好的集合:迭代器和組合模式 317
10 事物的狀態(tài):狀態(tài)模式 381
11 控制對象訪問:代理模式 425
12 模式的模式:復(fù)合模式 493
13 現(xiàn)實世界中的模式:更好地與設(shè)計模式相處 563
14 附錄:剩下的模式 597