本书从原理的角度阐述了面向对象程序设计的6大原则;讲解和剖析了23种常见的设计模式,并进行了扩展,通俗易懂、趣味性极强而又紧扣设计模式的核心;对各种相关联的设计模式进行了深入分析和比较,旨在阐明各种设计模式比较理想的应用场景和它们之间的区别;探讨了设计模式的混编,讲解了如何在实际开发中将各种设计模式混合起来使用,以发挥设计模式的最大效用。全书结合设计实例,从面向对象设计案例中精心选择了一些设计模式,总结了面向对象设计中最有价值的经验,并将其用简洁、可复用的形式表达出来。本书是The
Design of
Design一书的评注版,力邀国内资深专家执笔,在英文原著的基础上增加了中文点评和注释,旨在融合二者之长,既保留经典的原创文字与味道,又以先行者的学研心得与实践感悟,对读者的阅读和学习加以点拨,指明捷径。
關於作者:
作者:(美国)弗雷德里克·布鲁克斯(Frederick P.Brooks) 评注者:郭耀
弗雷德里克·布鲁克斯(Frederick P.Brooks.Jr,Brooks)被认为是“IBM
360系统之父”,曾担任IBM 360系统的项目经理,以及IBM
360系统项目设计阶段的经理。凭借在此项目中的杰出贡献,他与BobEvans和 Erich
Bloch在1995年荣获美国国家技术奖。Brooks博士早期曾担任IBM公司Stretch和Harvest汁算机的体系结构设汁师,Brooks博士创立了北卡罗莱纳大学的计算机科学系,并在1964-1984年担任系主任,还曾任职于美国国家科技局和国防科学技术委员会。
I Models of Designing
Chapter 1 The Design Question(新增评注19条)
Chapter 2 How Engineers Think of Design—The Rational
Model(新增评注10条)
Chapter 3 What’s Wrong with This Model?(新增评注29条)
Chapter 4 Requirements, Sin, and
Contracts(新增评注12条)
Chapter 5 What Are Better Design Process
Models?(新增评注13条)
II Collaboration and Telecollaboration(新增评注1条)
Chapter 6 Collaboration in Design(新增评注42条)
Chapter 7 Telecollaboration(新增评注16条)
III Design Perspectives
Chapter 8 Rationalism versus Empiricism in
Design(新增评注11条)
Chapter 9 User Models—Better Wrong than
Vague(新增评注8条)
Chapter 10 Inches, Ounces, Bits, Dollars—The Budgeted
Resource(新增评注10条)
Chapter 11 Constraints Are Friends(新增评注16条)
Chapter 12 Esthetics and Style in Technical
Design(新增评注26条)
Chapter 13 Exemplars in Design(新增评注26条)
Chapter 14 How Expert Designers Go Wrong(新增评注18条)
Chapter 15 The Divorce of Design(新增评注13条)
Chapter 16 Representing Designs’ Trajectories and
Rationales(新增评注28条)
IV A Computer Scientist’s Dream System for Designing
Houses
Chapter 17 A Computer Scientist’s Dream System for Designing
Houses—Mind to Machine(新增评注35条)
Chapter 18 A Computer Scientist’s Dream System for Designing
Houses—Machine to Mind(新增评注17条)
V Great Designers
Chapter 19 Great Designs Come from Great
Designers(新增评注27条)
Chapter 20 Where Do Great Designers Come
From?(新增评注28条)
VI Trips through Design Spaces: Case
Studies(新增评注1条)
Chapter 21 Case Study: Beach House
“View360”(新增评注19条)
Chapter 22 Case Study: House Wing
Addition(新增评注14条)
Chapter 23 Case Study: Kitchen
Remodeling(新增评注10条)
Chapter 24 Case Study: System360
Architecture(新增评注18条)
Chapter 25 Case Study: IBM Operating
System360(新增评注14条)
Chapter 26 Case Study: Book Design of Computer Architecture:
Concepts and Evolution(新增评注7条)
Chapter 27 Case Study: A Joint Computer Center Organization:
Triangle Universities Computation Center(新增评注11条)
Chapter 28 Recommended Reading(新增评注8条)
Acknowledgments
Bibliography
People Index
Subject Index
內容試閱:
For some of these, you would prefer email or telephone
overwalking and time synchronizing; for others, you would
gladlywalk quite a distance.
The most successful telecollaborations I have
known have beenbuilt on extensive face-time histories, and even
these have requiredsome face time during the ongoing
telecollaboration.Absent suchhistories, travel is worth what it
costs in money and time.
Some of the most fruitful dollars I spent at IBM
paid for abus to take the S360 project''s administrative staff and
secretar-ies 60 miles from Poughkeepsie to White Plains, New York.
Theyspent the midday lunching and talking with their counterpartsat
division headquarters, familiar voices hitherto faceless.
Thislubrication was much more effective than just more pressure
oncooperation.
I am told that Boeing brought its scores of
distributed designteams for the 777 airplane to Everett,
Washington, for weeks oftogether time, as the design was
starting.
People instinctively know the value of face time.
So, in spiteof potent videoconferencing technology, airplanes still
carry lotsof business travelers.
Clean Interfaces
Defining clean interfaces among remotely designed
componentsis a hard job. The job doesn''t end with
definition-continualquestion-and-answer interpretation of the
definitions'' semanticsproves necessary. Changes must be made,
controlled, and widelycommunicated.
Another important part of system architecture is
not merelythe definition of interfaces, but management''s designing
a prede-termined mechanism for resolving differences of opinion or
taste.There is no substitute for authority.