图书介绍
UML面向对象建模与设计 第2版pdf电子书版本下载
- (美)Michael Blaha,(美)James Rumbaugh著;车皓阳,杨眉译 著
- 出版社: 北京:人民邮电出版社
- ISBN:7115142238
- 出版时间:2006
- 标注页数:389页
- 文件大小:23MB
- 文件页数:407页
- 主题词:面向对象语言,UML-程序设计-教材
PDF下载
下载说明
UML面向对象建模与设计 第2版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 简介 1
1.1 什么是面向对象? 1
目录 1
1.2 什么是OO开发? 3
1.2.1 要建模的是概念,而非实现 3
1.2.2 OO方法论 3
1.2.3 三种模型 4
1.3 OO主题 5
1.3.1 抽象 5
1.3.2 封装 5
1.3.3 组合数据和行为 5
1.3.5 强调对象的本质 6
1.3.6 协同(synergy) 6
1.3.4 共享 6
1.4 关于OO开发有效性的证据 7
1.5 OO建模历史 7
1.6 本书的组织结构 8
参考文献注释 8
参考文献 9
习题 9
第一部分 建模的概念 13
第2章 建模是一种设计技术 13
2.1 建模 13
2.2 抽象 13
2.3 三种模型 14
2.3.1 类模型 14
2.3.2 状态模型 14
参考文献注释 15
2.4 小结 15
2.3.3 交互模型 15
2.3.4 模型间的关系 15
习题 16
第3章 类建模 18
3.1 对象和类的概念 18
3.1.1 对象 18
3.1.2 类 18
3.1.3 类图 19
3.1.4 值和属性 20
3.1.5 操作和方法 21
3.1.6 类表示法小结 22
3.2 链接和关联的概念 22
3.2.1 链接和关联 22
3.2.2 多重性 24
3.2.3 关联终端名 25
3.2.6 关联类 27
3.2.4 排序 27
3.2.5 包和序列 27
3.2.7 限定关联 29
3.3 泛化和继承 30
3.3.1 定义 30
3.3.2 泛化的用途 32
3.3.3 覆写特征 33
3.4 类模型的一个示例 33
3.5 类模型导航 35
3.5.1 遍历类模型的OCL制品 36
3.5.2 构建OCL表达式 37
3.5.3 OCL表达式的示例 37
3.6 实践技巧 39
3.7 小结 40
参考文献注释 40
参考文献 41
习题 42
第4章 高级类建模 49
4.1 高级对象和类的概念 49
4.1.1 枚举 49
4.1.2 多重性 50
4.1.3 作用域 50
4.1.4 可见性 51
4.2 关联终端 51
4.3 n元关联 52
4.4 聚合 54
4.4.1 聚合与关联 54
4.4.2 聚合与组合 55
4.4.3 操作的传播 55
4.5 抽象类 56
4.6.1 多重继承的种类 57
4.6 多重继承 57
4.6.2 多重分类 58
4.6.3 应对方案 59
4.7 元数据 61
4.8 具体化 61
4.9 约束 62
4.9.1 对象上的约束 62
4.9.2 泛化集上的约束 62
4.9.3 链接上的约束 63
4.9.4 使用约束 63
4.10 派生数据 63
4.11 包 64
4.12 实践技巧 65
4.13 小结 65
参考文献注释 66
参考文献 67
习题 67
第5章 状态建模 72
5.1 事件 72
5.1.1 信号事件 72
5.1.2 变更事件 73
5.1.3 时间事件 73
5.2 状态 74
5.3 迁移和状态 75
5.4 状态图 76
5.4.1 状态图示例 76
5.4.2 单触发状态图 77
5.4.3 状态图的基本表示法小结 78
5.5.2 do活动 79
5.5.1 活动效应 79
5.5 状态图行为 79
5.5.3 进入和退出活动 80
5.5.4 完成迁移 81
5.5.5 发送信号 81
5.5.6 状态图示例 82
5.6 实践技巧 82
5.7 小结 83
参考文献注释 83
参考文献 84
习题 84
第6章 高级状态建模 88
6.1 嵌套状态图 88
6.1.1 平面状态图的问题 88
6.1.2 扩展状态 88
6.2 嵌套状态 89
6.3 信号泛化 91
6.4.1 聚合并发 92
6.4 并发 92
6.4.2 对象内的并发 93
6.4.3 并发活动的同步 93
6.5 状态模型示例 94
6.6 类和状态模型的关系 99
6.7 实践技巧 99
6.8 小结 100
参考文献注释 101
参考文献 101
习题 101
7.1 用例模型 105
7.1.1 执行者 105
第7章 交互建模 105
7.1.2 用例 106
7.1.3 用例图 107
7.1.4 用例模型的准则 108
7.2 顺序模型 109
7.2.1 场景 109
7.2.2 顺序图 109
7.2.3 顺序模型的准则 111
7.3 活动模型 112
7.3.1 活动 113
7.3.2 分支 113
7.3.3 初始和终止 114
7.3.4 并发活动 114
7.3.5 可执行活动图 114
参考文献注释 115
7.4 小结 115
7.3.6 活动模型的准则 115
参考文献 116
习题 116
第8章 高级交互建模 118
8.1 用例关系 118
8.1.1 包含关系 118
8.1.2 扩展关系 118
8.1.3 泛化 119
8.1.4 用例关系的组合 120
8.1.5 用例关系的准则 121
8.2 过程化顺序模型 121
8.2.1 带有被动对象的顺序图 121
8.2.2 带有临时对象的顺序图 122
8.3.1 发送和接收信号 123
8.3 活动模型的特殊制品 123
8.2.3 过程化顺序模型的准则 123
8.3.2 泳道 124
8.3.3 对象流 125
8.4 小结 125
参考文献 126
习题 126
第9章 概念小结 129
9.1 类模型 129
9.2 状态模型 129
9.3 交互模型 129
9.4 模型之间的关系 130
9.4.1 泛化 130
9.4.2 聚合 131
10.1 开发阶段 135
10.1.1 系统构思 135
第10章 过程概述 135
第二部分 分析和设计 135
10.1.2 分析 136
10.1.3 系统设计 136
10.1.4 类设计 137
10.1.5 实现 137
10.1.6 测试 137
10.1.7 培训 137
10.1.8 部署 137
10.1.9 维护 137
10.2 开发生命周期 138
10.2.1 瀑布式开发 138
10.2.2 迭代开发 138
10.3 小结 138
习题 139
参考文献注释 139
第11章 系统构思 140
11.1 形成系统概念 140
11.2 阐释概念 140
11.3 准备问题陈述 142
11.4 小结 144
习题 144
第12章 领域分析 146
12.1 分析概述 146
12.2 领域类模型 147
12.2.1 寻找类 148
12.2.2 保留正确的类 149
12.2.3 准备数据词典 150
12.2.4 寻找关联 150
12.2.5 保留正确的关联 151
12.2.7 保留正确的属性 155
12.2.6 寻找属性 155
12.2.8 使用继承来细化 156
12.2.9 测试访问路径 158
12.2.10 迭代类模型 159
12.2.11 变换抽象的层次 161
12.2.12 把类组织成包 162
12.3 领域状态模型 162
12.3.1 确定具有状态的类 163
12.3.2 寻找状态 163
12.3.3 寻找事件 163
12.3.4 构建状态图 164
12.3.5 评价状态图 164
12.4 领域交互模型 165
12.5 分析迭代 165
12.5.1 细化分析模型 165
12.6 小结 166
12.5.2 重述需求 166
12.5.3 分析和设计 166
参考文献注释 167
参考文献 167
习题 167
第13章 应用分析 174
13.1 应用程序交互模型 174
13.1.1 确定系统边界 174
13.1.2 寻找参与者 175
13.1.3 寻找用例 175
13.1.4 寻找初始和终止事件 176
13.1.5 准备普通场景 176
13.1.6 增加变化和异常场景 177
13.1.7 寻找外部事件 177
13.1.10 检查领域类模型 180
13.1.9 组织参与者和用例 180
13.1.8 编制复杂用例的活动图 180
13.2 应用类模型 181
13.2.1 确定用户界面 181
13.2.2 定义边界类 182
13.2.3 确定控制器 182
13.2.4 检查交互模型 183
13.3 应用状态模型 183
13.3.1 使用状态来确定应用类 184
13.3.2 寻找事件 184
13.3.3 构建状态图 184
13.3.4 检查其他状态图 186
13.3.5 检查类模型 187
13.4.3 购物清单操作 188
13.4.2 来自用例的操作 188
13.4.1 来自类模型的操作 188
13.4 增加操作 188
13.3.6 检查交互模型 188
13.4.4 简化操作 189
13.5 小结 190
参考文献注释 190
参考文献 191
习题 191
第14章 系统设计 194
14.1 系统设计概述 194
14.2 估算性能 195
14.3 制订复用计划 195
14.3.1 库 195
14.3.2 框架 196
14.3.3 模式 196
14.4 将系统拆分成子系统 197
14.4.1 分层 198
14.4.2 分区 198
14.4.3 组合分层和分区 198
14.5 确定并发性 199
14.5.1 识别内部的并发性 200
14.5.2 定义并发任务 200
14.6 分配子系统 200
14.6.1 估算硬件资源需求 200
14.6.2 权衡硬件和软件 201
14.6.3 给处理器分配任务 201
14.6.4 确定物理连通性 202
14.7 管理数据存储 202
14.8 处理全局资源 203
14.9.1 过程驱动型控制 204
14.9 选择软件控制策略 204
14.9.2 事件驱动型控制 205
14.9.3 并发控制 205
14.9.4 内部控制 205
14.9.5 其他范型 205
14.10 处理边界条件 206
14.11 设定权衡优先级 206
14.12 常见的架构风格 207
14.12.1 批处理转换 207
14.12.2 连续型转换 208
14.12.3 交互式界面 209
14.12.4 动态仿真 209
14.12.5 实时系统 210
14.12.6 事务管理器 210
14.13 ATM系统的架构 210
14.14 小结 211
参考文献注释 212
习题 213
参考文献 213
第15章 类设计 218
15.1 类设计概述 218
15.2 填补空白区 219
15.3 实现用例 220
15.4 设计算法 221
15.4.1 选择算法 221
15.4.2 选择数据结构 222
15.4.3 定义内部类和操作 223
15.4.4 把操作分配给类 223
15.5 向下递归 225
15.5.1 功能分层 225
15.5.2 机制分层 225
15.7 设计优化 226
15.6 重构 226
15.7.1 为了高效访问而增加冗余的关联 227
15.7.2 为了效率而重新调整执行顺序 228
15.7.3 将派生值保存下来以避免重新计算 228
15.8 行为具体化 229
15.9 调整继承 230
15.9.1 重新调整类和操作 230
15.9.2 提取公共行为 230
15.9.3 使用委托来共享行为 231
15.10 组织类设计 233
15.10.1 信息隐藏 233
15.10.2 实体的内聚性 233
15.10.3 微调包 234
15.11 ATM示例 234
15.12 小结 235
参考文献 236
参考文献注释 236
习题 237
第16章 过程小结 241
16.1 系统构思 241
16.2 分析 242
16.2.1 领域分析 242
16.2.2 应用分析 242
16.3 设计 242
16.3.1 系统设计 242
16.3.2 类设计 242
17.1 实现概述 245
17.2 微调类 245
第三部分 实现 245
第17章 实现建模 245
17.3 微调泛化 247
17.4 实现关联 248
17.4.1 分析关联遍历 249
17.4.2 单向关联 249
17.4.3 双向关联 249
17.4.4 高级关联 250
17.5.1 单元测试 251
17.5.2 系统测试 251
17.4.5 ATM示例 251
17.5 测试 251
17.6 小结 252
参考文献注释 252
参考文献 253
习题 253
18.1.1 C++简介 254
18.1 简介 254
第18章 OO语言 254
18.1.2 Java简介 255
18.1.3 比较C++和Java 256
18.2 节选ATM模型 257
18.3 实现结构 257
18.3.1 数据类型 258
18.3.2 类 260
18.3.3 访问控制 260
18.3.4 泛化 262
18.3.5 关联 265
18.4 实现功能 267
18.4.1 创建对象 268
18.4.2 对象的生存期 270
18.4.3 对象销毁 271
18.4.4 链接创建 272
18.4.5 链接销毁 274
18.4.6 派生属性 275
18.5 实践技巧 275
18.6 小结 276
参考文献注释 277
参考文献 277
习题 277
第19章 数据库 281
19.1 简介 281
19.1.1 数据库的概念 281
19.1.2 关系数据库的概念 282
19.1.3 范式 283
19.1.4 选择DBMS产品 283
19.3.1 类 284
19.3 实现结构——基础 284
19.2 节选ATM模型 284
19.3.2 关联 285
19.3.3 泛化 287
19.3.4 标识 289
19.3.5 RDBMS实现的基本规则小结 289
19.4 实现结构——高级 290
19.4.1 外键 290
19.4.2 检查约束 291
19.4.3 索引 291
19.4.4 视图 292
19.4.5 小结RDBMS实现的高级规则 292
19.5 为ATM示例实现结构 292
19.6 实现功能 295
19.6.1 将程序设计语言耦合到数据库中 295
19.6.3 封装与查询优化 297
19.6.2 数据转换 297
19.6.4 使用SQL代码 298
19.7 面向对象数据库 298
19.8 实践技巧 299
19.9 小结 300
参考文献注释 300
参考文献 300
习题 301
第20章 程序设计风格 305
20.1 面向对象的风格 305
20.2 可复用性 305
20.2.1 可复用性的类别 305
20.2.2 可复用性的风格准则 306
20.2.3 使用继承 307
20.3 可扩展性 308
20.4 健壮性 309
20.5 大规模程序设计 310
20.6 小结 312
参考文献注释 313
参考文献 313
习题 313
第四部分 软件工程 317
第21章 迭代开发 317
21.1 迭代开发概述 317
21.2 迭代开发与瀑布式开发 317
21.3 迭代开发与快速原型法 318
21.4 迭代的适用范围 318
21.5 执行一次迭代 319
21.6 规划下一次迭代 320
21.7 建模和迭代开发 320
21.9 小结 321
21.8 识别风险 321
参考文献注释 322
参考文献 322
第22章 管理建模 323
22.1 管理建模概述 323
22.2 模型的类型 323
22.3 建模的缺陷 324
22.4 建模会话 325
22.4.1 密室建模 325
22.4.2 轮转建模 326
22.4.3 实况建模 326
22.5 组织人员 327
22.6 学习技术 328
22.8.1 建模工具 329
22.8 工具 329
22.7 教授技术 329
22.8.2 配置管理工具 330
22.8.3 代码生成器 330
22.8.4 模拟工具 330
22.8.5 库 331
22.9 估算建模工作量 331
22.10 小结 331
参考文献注释 332
参考文献 332
第23章 遗留系统 334
23.1 逆向工程 334
23.1.1 逆向工程与正向工程 334
23.1.2 逆向工程的输入 334
23.2.1 实现复原 334
23.2 构造类模型 335
23.1.3 逆向工程的输出结果 335
23.2.2 设计复原 336
23.2.3 分析复原 336
23.3 构造交互模型 336
23.4 构造状态模型 337
23.5 逆向工程的技巧 337
23.6 包装 337
23.7 维护 338
23.8 小结 339
参考文献注释 339
参考文献 339
附录A UML图形化表示法 341
附录B 术语表 343
部分习题答案 355
索引 379