基本信息
- 原书名:Object-Oriented Analysis and Design with Applications,2E
- 原出版社: Addison Wesley/Pearson
- 作者: (美)Grady Booch
- 译者: 冯博琴 冯岚 薛涛 崔舒宁
- 丛书名: 软件工程技术丛书/对象技术系列
- 出版社:机械工业出版社
- ISBN:9787111123170
- 上架时间:2003-9-15
- 出版日期:2003 年8月
- 开本:16开
- 页码:445
- 版次:2-1
- 所属分类:计算机 > 软件工程及软件方法学 > 面向对象
教材 > 计算机教材 > 本科/研究生 > 计算机专业教材 > 计算机专业课程 > 软件工程

内容简介
计算机书籍
本书的作者Crady Booch是面向对象技术的先驱,也是Retioml软件公司的首席科学家,他撰写了多本“面向对象开发”和“软件工程”的畅销书籍。本书是Booch的代表作之一,被公认是面向对象理论和方法的经典著作。 本书从概念、方法和应用三个龟度全面深入论述面向对象技术及其表示法。此外,书中还给出大量详实的例子,帮助读者学习和理解面向对象方法以及在实际领域中如何运用面向对象的分析和设计技术来开发软件。全书论述既深刻又浅显易懂,对于高等院校学生,本书是一本好的教材,对于工程技术人员,本书是一本好的参考书。
本书是UML的开山鼻祖Booch的代表作之一,也是此领域公认的不可替代的权威著作,在推动面向对象技术走向现实应用的过程中发挥了重要的作用,曾两次获得《Software Development》杂志的Jolt图书大奖 。
本书吸收了众多项目的丰富经验,从概念、方法和应用三个角度全面深入论述了面向对象技术及其表示法。作者以大量用C++语言实现的实例,阐明各种基本概念,解释面向对象的分析与设计方法,并展示在不同领域卓有成效的应用。
全书论述既深刻又浅显易懂,对于高等院校的学生,本书是一本好的教材,对于工程技术人员,本书是一本好的参考书。
GradyBooch是Rational公司的首席科学家,由于他在对象方法和应用中的开拓性工作而受到国际软件开发界的广泛尊敬。他曾撰写过几本有关软件工程和面向对象开发的畅销书(Booch先生主要著作的中文版均已由机械工业出版社出版)。他还赞是《Object Magazine))、 《C++Report》和《Software Development》等杂志
的专栏作家,并与Ivar Jacobson和Jim Rumbaugh共同担任了Addison-Wesley公司“对象技术”丛书的主编。
作译者
目录
1.1 软件固有的复杂性
1.1.1 简单软件系统与复杂软件系统的特性
1.1.2 为什么软件具有固有的复杂性
1.1.3 不限制复杂性的后果
1.2 复杂系统的结构
1.2.1 复杂系统示例
1.2.2 复杂系统的5个属性
1.2.3 有组织的复杂性与紊乱的复杂性
1.3 还混乱状态以秩序
1.3.1 分解的作用
补充材料:分析和设计方法的分类
1.3.2 抽象的作用
1.3.3 层次的作用
1.4 设计复杂系统
1.4.1 工程是科学也是艺术
1.4.2 设计的含义
1.5 小结
1.6 进一步阅读材料
译者序
本书的作者Crady Booch是面向对象技术的先驱,也是Rahonal软件公司的首席科学家,他撰写了多本“面向对象开发”和“软件工程”的畅销书籍。本书是作者的代表作之一,被公认为是面向对象理论和方法的经典著作,该书从概念、方法和应用三个角度全面深入地论述面向对象技术及其表示方法。此外,书中还给出大量详实的例子,帮助读者学习和理解面向对象方法以及在实际领域中如何运用面向对象的分析和设计技术来开发软件。全书论述既深刻又浅显易懂,对于大专院校学生以及相关技术人员,本书是一本十分难得的教材和参考书。
本书共分三部分:概念、方法和应用。第一部分主要对面向对象分析设计的基本概念、主要步骤、典型特点、关键问题等进行较为详细的介绍和阐述。该部分共分4章。第1章讲述软件固有的复杂性、复杂系统的结构和设计复杂系统的概念;第2章介绍对象模型的演化、对象模型的要素以及如何应用对象模型;第3章介绍对象的本质、对象间的关系、类的本质、类间的关系、类和对象的相互影响以及有关建立高质量的类和对象的方法;第4章探讨正确分类的重要性、识别类和对象及关键的抽象和机制。
本书的第二部分主要讲述面向对象的表示法、面向对象的开发过程和语用学。该部分共分3章。第5章讲述面向对象表示法的要素、类图、状态转换图、对象图、交互图、模块图和进程图;第6章介绍面向对象开发过程的原则和开发过程;第7章介绍开发过程的步骤。
本书的第三部分主要讲述面向对象分析设计在各个领域的应用。该部分共分5章。第8章介绍面向对象分析设计方法在气象监测站数据采集中的应用;第9章介绍面向对象分析设计方法在基于类库的框架结构上的应用;第10章介绍面向对象分析设计方法在库存跟踪系统的客户朋艮务器计算中的应用;第11章介绍面向对象分析设计方法在人工智能密码分析中的应用;
第12章介绍面向对象分析设计方法在交通管理中的应用。
本书由冯博琴教授组织翻译,第1章—第5章由冯岚翻译,第6章由胡英萍、冯岚翻译,第7章由符蓉翻译,第8章由王伟翻译,第9章由薛亮翻译,第10章由汪齐名翻译,第11章由管涛翻译,第12章及附录由胡英萍、夏红翻译,全书由薛涛、朱丹军、崔舒宁审校,冯博琴教授统稿。由于译者水平有限,错误在所难免,请读者不吝指正!
译 者
2002年4月于西安交通大学
前言
对第1版的改动
在本书第1版出版以后,面向对象的技术已实际成为产业化软件开发的主流。面向对象模式在全世界范围内开始使用,涉及各种领域(例如银行事务的管理、保龄球道的自动控制、公用事业的管理以及人体基因图谱的绘制等)。许多下一代操作系统、数据库系统、电话系统、航空电子系统以及多媒体应用程序都在用面向对象技术编写。的确,许多这样的项目之所以采用了面向对象技术,仅仅是因为没有其他的方式更能经济地产生一个持久且有弹性的编程系统。
近几年来,成百上千的项目已经应用了本书中描述的表示法和过程 。通过我们自己项目设计的经验以及同我们进行交流的其他设计人员所提供的有用信息,我们发现了一些方式可用来改善我们的方法,特别是在更好地叙述一个过程、添加和澄清一些有可能遗漏或在表示法中难以表达的特定语义以及尽可能地简化表示法这些方面。
这段时间中, 出现了许多其他的方法,包括Jacobson、Rumbaugh、Coad和Yourdon、Constantine、Shlaer 和 Melior、 Martin 和 Odell、 Wassennan、 Goldberg 和 Rubin、 Embley、Wirfs-Brock、Goldstein和Alger、Henderson-Sellers、Firesmith以及其他人的工作。Rumbaudl的工作特别有趣,因为他指出我们的方法之间相似之处远多于不同之处。我们研究了其中的大部分方法,同使用它们的开发人员和管理者面谈,并尽可能自己试验这些方法。我们对如何在项目中成功地运用面向对象技术更感兴趣,而不是仅仅由于情绪上或历史上的原因教条式地坚持实践,所以我们试图从每一种方法中汲取最好的部分,并将其包含到我们自己的工作中。我们非常感谢所有人在这个领域中所作出的基础性的、独一无二的贡献。
为了更好地推动软件开发行业,特别是面向对象技术,应该有一套比较标准的表示法。因此,这个版本提出了一套统一的表示法,尽可能地消除我们的表示法同其他人的表示法之间的表面差别,特别是跟Jacobson的表示法和Rumbaugh的表示法之间的差别。像从前一样,为了鼓励不受限制地使用这种方法,这套表示法可用于公共领域。
第2版的目标、读者以及结构仍然同第1版一致。尽管这样,还是有五个主要的不同点。
首先,扩展了第5章,从而提供更多关于这套统一表示法的具体细节。为了加深读者对这套表示法的理解,我们明确地对基本元素和高级元素作出了区分。另外,我们还特别关注这套表示法的各个视图之间是如何相互集成在一起的。
其次,对第6、7章也进行了扩展,主要阐述面向对象的分析和设计的过程和模式。同时对第2版中的标题作出了修改,从而更好地反映出一个事实,即开发过程确实是包含分析和设计的。
第三,使用C++来描述正文中所有的编程示例。C++这门语言正迅速成为许多应用程序领域的事实上的标准;另外,大多数用其他语言编程的专业开发人员也能读懂C++。这并不是说我们就把其他语言(像Smalltalk、CLOS、Ada还有Eiffel等)看得不重要。本书的要点在于分析和设计,而且由于需要描述一些具体的例子,因此我们就选择使用相对通用的编程语言来表现。在具体使用的时候,我们会描述相对于其他语言来说较新的语义及其对方法的影响。 ,
第四,第2版介绍了几个新的应用程序示例。其中用到的惯用法和体系结构框架已经出现在各种各样的应用程序领域,这些示例就利用了这些实践。举例来说,客户/服务器计算提供了修改过的应用程序示例的基础。
最后,几乎每一章都提供了从第1版以来出现的相关面向对象技术的参考文献和讨论。
目标
本书在面向对象系统构建方面提供了实用指导。其特定的目标为:
· 提供对一个对象模型基础概念的正确理解。
· 促进对表示法体系和面向对象分析和设计过程的掌握。
· 教授在不同的问题域中面向对象开发的实际应用。
在此指出的概念是基于牢固的理论基础,但本书首先是一本注重实效的书,主要讨论软件工程界的实际需要和所关心的问题。
读者对象
本书既是为计算机专业人员也是为学生编写的。