编辑推荐
面向对象技术以其显著的优势已经成为计算机软件领域的主流技术。《大学计算机优秀教材系列:面向对象分析与设计(第2版)》是一本适合应用型人才培养的关于面向对象分析与设计的教材。
进行面向对象分析与设计需要一套概念与表示法。《大学计算机优秀教材系列:面向对象分析与设计(第2版)》所采用的概念和表示法与UML2.4保持一致,但并不是全盘采用。本书提倡充分运用面向对象方法的基本概念,限制扩充概念的引入,通过加强过程指导而保持建模概念的简练。
进行面向对象分析与设计需要一套过程指导。本书所采用的开发过程,是在借鉴了较为流行的多种面向对象开发方法的基础上,根据青鸟工程的成果和作者参与的科研及工程实践的经验总结出来的,该过程指导具有实用性和广泛的适应性。
与第1版相比,新版有如下改进:
·对面向对象概念的定义更为准确,对概念的解释也更加丰富和深入,对建模指导方面的内容进行了充实。
·内容上更加与时俱进,本书第1版中的建模语言采用的是UML2.0,本版写作时OMG发布了UML2.4,其中模型图的种类、图元素的表示法以及一些解释都发生了变化,本版的建模语言遵循了UML2.4。
·作者和热心的读者在第1版的使用中发现了一些问题,本次再版对这些问题进行了修正。
·本版给出了更多的应用实例,帮助读者加强对分析与设计建模策略和技巧的理解。
内容简介
《大学计算机优秀教材系列:面向对象分析与设计(第2版)》是一本关于面向对象分析与设计的教材,讲述了面向对象的基本思想、主要概念以及相应的表示法,并给出了详细的建模过程指导。《大学计算机优秀教材系列:面向对象分析与设计(第2版)》注重理论与实践相结合,通过给出大量的例题、内容较为详尽的案例分析以及对建模概念的详细剖析,阐明了如何进行面向对象的分析与设计。
《大学计算机优秀教材系列:面向对象分析与设计(第2版)》适合作为高等院校计算机学院(或信息学院等)和软件学院的软件工程专业、计算机专业和相关专业的高年级本科生、工程硕士的教材,也可作为培训班师生以及从事软件开发的工程技术人员的参考书。
作者简介
麻志毅,博士,任教于北京大学信息科学技术学院计算机系,目前还担任国家软件行业协会软件工程分会秘书长。长期从事软件工程方面的教学与科研工作。在国内外学报或会议上发表学术论文100余篇,主持或参加国家高技术研究发展计划(863)、国家重大基础研究(973)、国家科技支撑计划和国家自然科学基金等20余项国家科研项目,出版著(译)作11部。主要研究领域为软件工程支撑环境、面向对象技术和面向服务计算技术等。曾获国家科技进步二等奖和国家科技攻关优秀成果奖等国家部委奖励多项。
内页插图
目录
前言
教学建议
第一部分 概述
第1章 面向对象方法概论
1.1 传统软件开发方法中存在的问题
1.2 面向对象的基本思想
1.3 面向对象的基本原则
1.4 面向对象方法的主要优点
1.5 面向对象方法的发展史及现状简介
1.6 关于统一建模语言UML
习题
第二部分 面向对象分析
第2章 什么是面向对象分析
2.1 分析面临的主要问题
2.2 面向对象分析综述
习题
第3章 建立需求模型——用况图
3.1 系统边界
3.2 参与者
3.2.1 概念与表示法
3.2.2 识别参与者
3.3 用况
3.3.1 概念与表示法
3.3.2 用况与参与者之间的关系
3.3.3 用况之间的关系
3.3.4 捕获用况
3.3.5 用况模板
3.4 用况图
3.5 检查与调整
3.6 用况模型与OOA模型
3.7 例题
习题
第4章 建立基本模型——类图
4.1 对象与类
4.1.1 概念与表示法
4.1.2 识别对象与类
4.1.3 审查与筛选
4.1.4 抽象出类并进行调整
4.1.5 认识对象的主动行为并识别主动对象
4.1.6 类的命名
4.1.7 建立类图的对象层
4.2 属性与操作
4.2.1 属性
4.2.2 操作
4.3 关系
4.3.1 继承
4.3.2 关联
4.3.3 聚合
4.3.4 依赖
4.4 接口
习题
第5章 建立辅助模型
5.1 顺序图
5.1.1 概念与表示法
5.1.2 顺序图中的结构化控制
5.1.3 建立顺序图
5.2 通信图
5.2.1 概念与表示法
5.2.2 建立通信图
5.3 活动图
5.3.1 概念与表示法
5.3.2 建立活动图
5.4 状态机图
5.4.1 概念与表示法
5.4.2 建立状态机图
5.5 包图
5.5.1 概念与表示法
5.5.2 如何划分与组织包
习题
第三部分 面向对象设计
第6章 什么是面向对象设计
6.1 OOA与OOD的关系
6.2 面向对象设计模型和过程
习题
第7章 问题域部分 的设计
7.1 复用类
7.2 增加一般类以建立共同协议
7.3 提高性能
7.4 按编程语言调整继承
7.5 转化复杂关联并决定关联的实现方式
7.6 调整与完善属性
7.7 构造及优化算法
7.8 决定对象间的可访问性
7.9 定义对象实例
7.10 其他
习题
第8章 人机交互部分 的设计
8.1 什么是人机交互部分
8.2 如何分析人机交互部分
8.3 如何设计人机交互部分
8.3.1 设计输入与输出
8.3.2 命令的组织
8.3.3 用OO概念表达所有的界面成分
8.3.4 衔接界面模型和问题域模型
8.4 人机交互部分 的设计准则
习题
第9章 控制驱动部分 的设计
9.1 什么是控制驱动部分
9.2 控制流
9.3 如何设计控制驱动部分
9.3.1 识别控制流
9.3.2 审查
9.3.3 定义控制流
9.3.4 进程间和线程间的通信
9.3.5 控制流间的同步
习题
第10章 数据管理部分 的设计
10.1 什么是数据管理部分
10.2 数据库和数据库管理系统
10.2.1 关系数据库
10.2.2 面向对象数据库
10.3 如何设计数据管理部分
10.3.1 针对关系数据库系统的数据存取设计
10.3.2 针对面向对象数据库系统的数据存取设计
10.3.3 针对文件系统的数据存取设计
习题
第11章 构件及部署部分 的设计
11.1 构件设计
11.1.1 概念与表示法
11.1.2 构件的内部结构
11.1.3 对构件的行为建模
11.1.4 对构件的实现建模
11.2 部署设计
11.2.1 概念与表示法
11.2.2 对系统的部署建模
习题
第12章 若干典型的设计模式
12.1 引言
12.2 外观模式
……
第四部分 系统与模型
第五部分 建模实例
附录A 面向对象的软件建模工具
附录B 文档编制指南
参考文献
精彩书摘
以往在操作系统和编程语言的支持下,或再加上图形包,进行图形方式的人机界面开发,工作量是很大的。现在,可以使用窗口系统、图形用户界面(GUI)和可视化编程环境这样的级别越来越高的界面支持系统进行人机界面开发。特别是可视化编程环境可以按所见即所得的方式,定制所需的人机界面,如此定义的界面对象可由编程环境提供的工具自动地转化为程序代码,这使得人机界面的设计工作大大简化。然而,仍有一些设计工作要做,其中的很多内容对各种设计方法都是相同的,也有一些是采用OO方法所必须要考虑的。例如,可视化编程环境一般都带有内容丰富的界面类库,界面类库中对大部分常用的界面对象都给出了类的源代码,在进行OOD时要充分地复用这些类。
8.3.1 设计输入与输出
根据前面从用况中提取出来的对人机交互的描述,设计输入与输出。首先要选择界面支持系统,如窗口系统、GUI或可视化编程环境,然后进行输入与输出设计。输入与输出技术正在不断地发展,这里仅就目前常见的输入与输出方式进行阐述。
1.设计输入
在设计输入时,要进行如下的工作。
(1)确定输入设备
常见的输入设备有键盘、鼠标、磁卡阅读器、条码阅读器、光电字符识别阅读器、扫描仪、触摸屏、电子笔和书写板等。键盘和鼠标属于标准的计算机设备,不考虑在内。对于一些非标准的计算机外部设备的接口程序,可以把它们放在相应的类中。如果要从外系统进行输入,可以把外系统的接口程序放在相应的类中。如果要隔离外部设备或外系统的变化对本系统的影响,可以针对外部设备或外系统的接口程序单设立类。对于某些复杂的情况,可能还需要考虑同步机制。
(2)设计输入界面
在用户的输入界面中,主要的界面元素有窗口、菜单、对话盒、图符、滚动条和按钮等。下面以菜单和对话盒为例,说明如何设计其内容。
菜单是提供给用户的一系列对应着用户动作的条目列表。大部分系统都具有通常形式的菜单,如文件、视图、工具、窗口和帮助等,但也都具有自己的特有部分。在设计特有部分时,要保证术语的一致性与简洁性,并按逻辑对条目进行分组。菜单要设计成面向不同用户的,最好可以进行重组。
……
前言/序言
在20世纪90年代,面向对象技术以其显著的优势成为计算机软件领域的主流技术,随后该技术在大多数发达国家的软件开发中得到了相当广泛的运用。在我国的软件产业界,面向对象技术的学习与应用热潮出现于20世纪90年代后期,如今面向对象分析与设计技术也已经得到了广泛的应用。
当前,产业界需要大量掌握面向对象分析与设计技术的高级应用型开发人才。很多计算机学院和软件学院在软件工程教学中开设了相应的课程,旨在使学生不仅会使用一种或者几种面向对象编程语言来编程,更重要的是能运用面向对象方法进行系统建模,即通过面向对象分析(Object- Oriented Analysis,OOA)和面向对象设计(Object-Oriented De-sign,OOD)建立系统的分析模型和设计模型。
邵维忠教授和杨芙清院土合著的两本著作在广泛借鉴国际上各种OOA与OOD方法的同时,根据作者长期的研究与实践形成了自己的方法特色。其中最主要的特色有三条;一是提倡充分运用面向对象方法的基本概念,限制扩充概念的引入,通过加强过程指导而保持建模概念的简练;二是对UML(Unified Modeling Language,统一建模语言)所采用的与面向对象有关的概念进行了深入的解析,给出了自己的见解;三是其OOD部分比以往的著作内容更为详细,并且更强调用OO概念表达各种全局性的设计决策。这两部学术专著作为教材适合于理论性强的研究生教学。
大学计算机优秀教材系列:面向对象分析与设计(第2版) 电子书 下载 mobi epub pdf txt