OOD启思录PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:(美)Arthur J.Riel著;鲍志云译
- 出 版 社:北京:人民邮电出版社
- 出版年份:2004
- ISBN:7115123365
- 页数:358 页
目录 1
第1章 面向对象编程的动因 1
1.1 革命家、改革家与面向对象范型 1
1.2 Frederick Brooks观点:非根本复杂性与根本复杂性 3
1.3 瀑布模型 4
1.4 迭代模型 5
1.5 构造原型:相同语言与不同语言 6
1.6 软件复用性 7
1.7 优秀设计者阶层 7
术语表 8
第2章 类和对象:面向对象范型的建材 11
2.1 类和对象导引 11
2.2 消息和方法 14
2.3 类耦合与内聚 18
2.4 动态语义 20
2.5 抽象类 22
2.6 角色与类 23
术语表 24
经验原则小结 25
第3章 应用程序布局:面向动作与面向对象 27
3.1 应用程序的不同布局 27
3.2 面向动作范型何时适用 29
3.3 问题:全能类(行为表现) 30
3.4 系统功能不良分布的另一个例子 34
3.5 问题:全能类(数据表现) 36
3.6 问题:泛滥成灾的类 38
3.7 代理类的角色 42
3.8 用途考察:单独实体和控制类 44
术语表 46
经验原则小结 46
4.2 使用关系 49
第4章 类和对象的关系 49
4.1 类和对象关系导引 49
4.3 实现使用关系的6种不同方法 50
4.4 使用关系的经验原则 52
4.5 精确调整两个类之间的协作量 53
4.6 包含关系 55
4.7 类之间的语义约束 58
4.8 属性与被包含的类 60
4.9 包含关系的更多经验原则 61
4.10 使用和包含的关系 63
4.11 值包含与引用包含 64
术语表 65
经验原则小结 66
第5章 继承关系 69
5.1 继承关系导引 69
5.2 在派生类中覆写基类方法 73
5.3 在基类中使用保护区域 75
5.4 继承层次结构的宽度和深度 77
5.5 C++的划分:私有、保护和公有继承 78
5.6 一个现实世界中的特化例子 80
5.7 经验原则:寻求设计复杂性和灵活性的平衡 81
5.8 一个现实世界中的泛化例子 84
5.9 多态机制 85
5.10 把继承作为复用机制的一个问题 89
5.11 用继承实现中断驱动架构的方案 93
5.12 继承层次结构与属性 94
5.13 混淆:继承的需求与对象动态语义 96
5.14 用继承来隐藏类的实现 98
5.15 把对象误当作继承类 99
5.16 把需概括对象误作需在运行时创建类 100
5.17 在派生类中屏蔽基类方法的尝试 103
5.18 对象可选部分的实现 106
5.19 没有最优解的问题 108
5.20 复用组件与复用框架 112
术语表 115
经验原则小结 116
第6章 多重继承 119
6.1 多重继承导引 119
6.2 多重继承的常见误用 120
6.3 多重继承的正当使用 122
6.4 不支持多重继承的语言中的非根本复杂性 123
6.5 用到多重继承的框架 124
6.6 运用多重继承:设计mixin 125
6.7 DAG多重继承 126
6.8 可选包含的不良实现造成的不当DAG多重继承 127
经验原则小结 128
术语表 128
第7章 关联关系 131
7.1 关联导引 131
7.2 用引用属性实现关联 132
7.3 用第三方类实现关联 134
7.4 在包含关系和关联关系间取舍 135
术语表 136
经验原则小结 137
第8章 与特定类相关的数据及行为 139
8.1 类相关与对象相关数据及行为导引 139
8.2 用元类来表示类相关数据及行为 140
8.3 用语言层面关键字来实现类相关与对象相关数据及行为 141
8.4 C++中的元类 141
8.5 有用的抽象类,但不是基类 143
术语表 144
经验原则小结 145
9.1 面向对象逻辑设计和物理设计的角色 147
第9章 面向对象物理设计 147
9.2 创建面向对象包装器 150
9.3 面向对象系统中的持久化 153
9.4 面向对象应用程序中的内存管理问题 156
9.5 可复用组件的最小公有接口 157
9.6 实现安全的浅拷贝 161
9.7 并行面向对象编程 164
9.8 用非面向对象语言实现面向对象设计 165
术语表 167
经验原则小结 168
第10章 经验原则和模式的关系 169
10.1 经验原则与模式 169
10.2 设计变换模型的传递性 171
10.3 设计变换模式的自反性 174
10.4 其他设计变换模式 176
10.5 未来研究 180
第11章 在面向对象设计中使用经验原则 183
11.1 ATM问题 183
11.2 选择方法学 185
11.3 产生ATM对象模型的第一次尝试 186
11.4 给我们的对象模型增加行为 188
11.5 非根本复杂性带来的显式情况分析 192
11.6 在不同地址对象间传递消息 193
11.7 交易处理 194
11.8 回到ATM的领域 194
11.9 其他杂类问题 196
11.10 小结 198
附录A 经验原则总结 201
附录B C++中的内存泄漏 207
附录C C++实例精选 229
本书中引用到的其他图书 355
参考文献 357
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019