UML 面向对象设计基础
分類: 图书,计算机/网络,软件工程/开发项目管理,
作者: 陈冀康
出 版 社: 人民邮电出版社
出版时间: 2001-4-1字数:版次: 1版1次页数: 313印刷时间:开本:印次:纸张:I S B N : 9787115091543包装: 精装内容简介
本书第一部分介绍了面向对象的基本概念以及面向对象的发展史。第二部分较全面地介绍了统一建模语言,UML 已成为描述面向对象设计符号的事实上的标准。第三部分较深入地介绍面向对象设计的原理。本书最后一章分析软件构件的特点,包括优点和缺点。
目录
第一部分引言1
第1章面向对象的含义3
1.1封装7
1.2信息/实现隐藏9
1.3状态保持11
1.4对象标识11
1.5消息14
1.5.1消息结构15
1.5.2消息参数15
1.5.3消息中的对象角色17
1.5.4消息的类型18
1.6类19
1.7继承23
1.8多态性27
1.9一般性30
1.10本章小结34
1.11习题35
1.12答案36
第2章面向对象简史40
2.1面向对象的起源40
2.1.1Larry Constantine40
2.1.2O.-J. Dahl 和K.Nygaard40
2.1.3Alan Kay,Adele Goldberg等人41
2.1.4Edsger Dijkstra41
2.1.5Barbara Liskov41
2.1.6David Parnas41
2.1.7Jean Ichbiah 等人41
2.1.8Bjarne Stroustrup41
2.1.9Bertrand Meyer42
2.1.10Grady Booch,Ivar Jacobson及Jim Rumbaugh42
2.2面向对象的成熟期42
2.3类似工程学的面向对象43
2.4面向对象的益处44
2.4.1用户需求分析45
2.4.2软件设计45
2.4.3软件构造46
2.4.4软件维护47
2.4.5软件使用47
2.4.6软件项目管理48
2.5本章小结49
2.6习题49
2.7答案50
第二部分统一建模语言(UML)51
第3章类、属性和操作的基本表示法56
3.1类56
3.2属性57
3.3操作58
3.4重载操作61
3.5属性和操作的可视性62
3.6类属性和类操作63
3.7抽象操作和类63
3.8实用程序65
3.9参数化类66
3.10本章小结67
3.11习题68
3.12答案68
第4章类图72
4.1一般化结构72
4.1.1单一继承72
4.1.2多重继承74
4.1.3子类的划分74
4.1.4分类识别名称76
4.2关联结构77
4.2.1关联的基本UML表示法78
4.2.2关联类80
4.2.3多向关联81
4.2.4关联的导航82
4.3整体/部分关联83
4.3.1组成83
4.3.2聚集85
4.4本章小结88
4.5习题89
4.6答案90
第5章对象交互图94
5.1协同图94
5.1.1描述一个消息95
5.1.2协同图中的多态性97
5.1.3重复的消息98
5.1.4在消息中使用self98
5.2时序图100
5.3异步消息及并发执行102
5.3.1描述一个异步消息103
5.3.2回调机制104
5.3.3异步消息的优先权107
5.3.4描述一个广播(无目标)消息108
5.4本章小结109
5.5习题110
5.6答案110
第6章状态图112
6.1基本状态图112
6.2嵌套状态114
6.3并发状态和同步117
6.4消息结果参数的瞬时状态121
6.5连续的、可变的属性122
6.6本章小结124
6.7习题125
6.8答案126
第7章体系结构和接口图130
7.1描述系统体系结构130
7.1.1包130
7.1.2硬件环境的配置图132
7.1.3软件结构的配置图133
7.2人机界面的描述135
7.2.1窗口布局图136
7.2.2窗口导航图137
7.2.3题外话:什么是面向对象的GUI139
7.3本章小结139
7.4习题140
7.5答案140
第三部分面向对象设计的原则143
第8章封装与共生性(connascence)144
8.1封装结构144
8.1.1封装的级别144
8.1.2制定标准管理各个封装级别之间的相互作用146
8.2共生性(connascence)147
8.2.1共生性的种类147
8.2.2差异共生性(contranascence)150
8.2.3共生性和封装边界151
8.2.4共生性和可维护性152
8.2.5面向对象系统中共生性的滥用154
8.2.6共生性(connascence)的术语156
8.3本章小结156
8.4习题157
8.5答案158
第9章领域、依附集和内聚160
9.1对象类的领域160
9.1.1基础领域161
9.1.2结构领域161
9.1.3商业领域162
9.1.4应用领域163
9.1.5每一领域类的来源163
9.2依附集(encum brance)165
9.2.1什么是依附集(encumbrance)165
9.2.2依附集的使用167
9.2.3Demeter规则168
9.3类的内聚(Class Cohesion):一个类和它的特性169
9.3.1混合事例型内聚170
9.3.2混合领域型内聚171
9.3.3混合角色型内聚172
9.4本章小结173
9.5习题174
9.6答案175
第10章状态空间和行为178
10.1一个类的状态空间和行为178
10.2子类的状态空间181
10.3子类的行为183
10.4状态空间的一个约束条件:类的不变式184
10.5前置条件和后置条件186
10.6本章小结188
10.7习题189
10.8答案189
第11章类型一致性与闭合行为192
11.1类与类型192
11.2类型一致性原则194
11.2.1抗变性与协变性原则195
11.2.2抗变性与协变性实例195
11.2.3图解抗变性与协变性199
11.2.4类型一致性必要条件综述200
11.3闭合行为(Closed Behavior)原则201
11.4本章小结202
11.5习题203
11.6答案204
第12章继承与多态性的危险性207
12.1继承的滥用207
12.1.1错误的聚集207
12.1.2倒置的层次结构208
12.1.3混淆类及其实例209
12.1.4误用212
12.2多态性的危险性215
12.2.1操作的多态性215
12.2.2变量的多态性217
12.2.3消息中的多态性218
12.2.4多态性与一般性220
12.3本章小结221
12.4习题222
12.5答案223
第13章组织操作技术227
13.1混合类227
13.1.1商务举例227
13.1.2图形举例231
13.2操作环234
13.3本章小结238
13.4习题238
13.5答案239
第14章类的聚合及其所支持的状态和行为242
14.1类接口中支持的状态242
14.2类接口中支持的行为243
14.3类接口中操作的聚合248
14.4本章小结250
14.5习题251
14.6答案254
第15章设计软件构件259
15.1什么是构件259
15.2构件与对象的相似性和区别260
15.3构件举例262
15.4构件的内部设计267
15.5轻量和重量构件272
15.6使用构件的优点和缺点274
15.7本章小结277
15.8习题278
15.9答案278
附录A面向对象设计检查(Walkthrough)列表280
附录B面向对象设计者手册284
附录C面向对象术语快速指南288
词汇表289
参考文献306