全部博文(465)
分类: Delphi
2012-11-16 15:45:18
设计原本:计算机科学巨匠Frederick P.Brooks的思考(评注版)(Design of Design名作精读)
(美)布鲁克斯(Brooks, F. P.)著
郭耀 评注
ISBN 978-7-121-17827-6
2012年9月出版
定价:79.00元
16开
440页
内 容 简 介
本书从原理的角度阐述了面向对象程序设计的6大原则;讲解和剖析了23种常见的设计模式,并进行了扩展,通俗易懂、趣味性极强而又紧扣设计模式的核心;对各种相关联的设计模式进行了深入分析和比较,旨在阐明各种设计模式比较理想的应用场景和它们之间的区别;探讨了设计模式的混编,讲解了如何在实际开发中将各种设计模式混合起来使用,以发挥设计模式的最大效用。全书结合设计实例,从面向对象设计案例中精心选择了一些设计模式,总结了面向对象设计中最有价值的经验,并将其用简洁、可复用的形式表达出来。
本书适合大学计算机专业的学生、研究生及相关人员参考。
本书是The Design of Design一书的评注版,力邀国内资深专家执笔,在英文原著的基础上增加了中文点评和注释,旨在融合二者之长,既保留经典的原创文字与味道,又以先行者的学研心得与实践感悟,对读者的阅读和学习加以点拨,指明捷径。
作者简介
Frederick P. Brooks 是著名计算机科学家,1999年图灵奖获得者。他曾经负责IBM著名的System/360系统的设计,以及该系统之上的操作系统OS/360。本书中介绍的很多经验都来自于他在IBM的工作经历。
更为中国读者所熟悉的是他所著的《Mythical Man-Month(人月神话)》一书,该书出版30余年来一直畅销不衰,被翻译为多国文字,成为软件工程领域当之无愧的经典巨著。
评注者序
一谈到软件工程领域的经典著作,几乎所有IT界人士都会想到1975年出版的Fred Brooks的《人月神话》(The Mythical Man-Month: Essays on Software Engineering)。然而,计算机科学巨匠Brooks对业界更为重要的贡献是在IBM公司任职时作为主管研发了IBM System/360系列计算机和OS/360操作系统。在1999年美国计算机协会(Association for Computing Machinery,简称ACM)把图灵奖颁发给Brooks的时候,对他的评价是“在计算机体系结构、操作系统和软件工程领域均做出了里程碑式的贡献”。
作为一位精通软/硬件的计算机大师,Brooks显然不满足于人们把《人月神话》作为他的标志性著作。因此,在《人月神话》出版35年之后,Brooks又写成了《设计原本》(The Design of Design: Essays from a Computer Scientist)。顾名思义,这本书涉及的范围从软件工程扩展到了计算机科学以及计算机科学之外的其他学科,浓缩了Brooks这位年近80岁的计算机科学巨匠对计算机软/硬件设计、(广义的)产品设计乃至人生的思考。
与The Mythical Man-Month一样,The Design of Design也以随笔(Essay)的形式写成,行文优美,语句易懂,虽然没有太多“语不惊人死不休”的名言警句,但是也字字珠玑,值得反复琢磨。
本书内容主要包括以下6个部分。
·设计模型(Models of Designing):讲解设计的基本概念和经典的理性设计模型,以及理性模型中存在的问题。
·协作和视频协作(Collaboration and Telecollaboration):讲解设计协作的概念,以及远程协作和视频协作等新兴技术为设计带来的好处。
·设计的观点(Design Perspectives):本书最为重要的一部分,讲解作者关于设计的主要观点,包括对设计中存在的问题的分析以及各种解决思路。
·用于住宅设计的梦想系统(A Computer Scientist’s Dream System for Designing Houses):作者以设计自家住宅的经验为例,介绍计算机软件系统在设计中的作用。
·伟大的设计师(Great Designers):伟大的设计离不开伟大的设计师,那么伟大的设计师又来自哪里?
·案例研究(Trips through Design Spaces: Case Studies):通过多个领域的设计案例,讲解如何在不同的设计中体现设计思想和设计技巧。这里的领域包括房屋设计、计算机软/硬件设计、图书(教材)设计,甚至一个计算中心组织架构的设计。
接受为The Design of Design做评注的任务,其实是非常冒险的。基于广大读者,特别是中国读者对The Mythical Man-Month的崇拜,The Design of Design显然也会成为关注的焦点。笔者曾经参与The Mythical Man-Month的评注工作,因此深感为大师巨作添加评注的困难。
在做评注的过程中,笔者的目标是释义和释疑。首先,对书中涉及的非常用专业术语和背景知识加以解释。其次,试图对读者在阅读过程中可能遇到的疑问进行解答。此外,注重提炼文中的主要观点,为对英语无法做到像母语一样一目十行的读者提供快速浏览和定位的提示。最后,也试图对一些有争议的问题给出国内外的相关观点和自己的评价。
面对The Design of Design这样一部经典著作,笔者的所有评注均力求站在为读者服务的立场,尽量少带主观看法,从而帮助读者更好地理解原著、更多地了解背景知识。在为本书做评注的过程中,笔者查阅了大量的资料,以免去读者的部分案头工作。当然,如果读者能够熟练阅读原文,并且拥有足够的计算机软/硬件背景知识,则完全可以略去评注,细细品味原文。评注中如有任何不妥之处,敬请读者批评指正。
最后,非常感谢电子工业出版社的张春雨先生及其他同事的帮助和耐心,使本书得以呈现在读者的面前。
郭耀
2012年5月于北京大学
目 录
I Models of Designing 1
Chapter 1 The Design Question(新增评注19条) 3
Chapter 2 How Engineers Think of Design—The Rational Model(新增评注10条) 13
Chapter 3 What’s Wrong with This Model?(新增评注29条) 21
Chapter 4 Requirements, Sin, and Contracts(新增评注12条) 39
Chapter 5 What Are Better Design Process Models?(新增评注13条) 51
II Collaboration and Telecollaboration(新增评注1条) 61
Chapter 6 Collaboration in Design(新增评注42条) 63
Chapter 7 Telecollaboration(新增评注16条) 89
III Design Perspectives 103
Chapter 8 Rationalism versus Empiricism in Design(新增评注11条) 105
Chapter 9 User Models—Better Wrong than Vague(新增评注8条) 113
Chapter 10 Inches, Ounces, Bits, Dollars—The Budgeted Resource(新增评注10条) 119
Chapter 11 Constraints Are Friends(新增评注16条) 127
Chapter 12 Esthetics and Style in Technical Design(新增评注26条) 139
Chapter 13 Exemplars in Design(新增评注26条) 153
Chapter 14 How Expert Designers Go Wrong(新增评注18条) 167
Chapter 15 The Divorce of Design(新增评注13条) 175
Chapter 16 Representing Designs’ Trajectories and Rationales(新增评注28条) 185
IV A Computer Scientist’s Dream System for Designing Houses 201
Chapter 17 A Computer Scientist’s Dream System for Designing Houses—Mind to Machine(新增评注35条) 203
Chapter 18 A Computer Scientist’s Dream System for Designing Houses—Machine to Mind(新增评注17条) 219
V Great Designers 229
Chapter 19 Great Designs Come from Great Designers(新增评注27条) 231
Chapter 20 Where Do Great Designers Come From?(新增评注28条) 243
VI Trips through Design Spaces: Case Studies(新增评注1条) 257
Chapter 21 Case Study: Beach House “View/360”(新增评注19条) 259
Chapter 22 Case Study: House Wing Addition(新增评注14条) 279
Chapter 23 Case Study: Kitchen Remodeling(新增评注10条) 297
Chapter 24 Case Study: System/360 Architecture(新增评注18条) 313
Chapter 25 Case Study: IBM Operating System/360(新增评注14条) 331
Chapter 26 Case Study: Book Design of Computer Architecture: Concepts and Evolution(新增评注7条) 347
Chapter 27 Case Study: A Joint Computer Center Organization: Triangle Universities Computation Center(新增评注11条) 355
Chapter 28 Recommended Reading(新增评注8条) 367
Acknowledgments 371
Bibliography 375
People Index 393
Subject Index 401