当前位置:首页 > 工业技术
面向对象软件开发原理  原书第2版
面向对象软件开发原理  原书第2版

面向对象软件开发原理 原书第2版PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:(荷)Anton Eliens著;袁兆山等译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2003
  • ISBN:7111111885
  • 页数:357 页
图书介绍:本书分成四个部分,共12章、10个附录。第一部分面向对象系统设计(第1~4章),介绍OO软件开发的基础知识。第二部分面向对象的语言和系统(第5~7章),比较各种OO语言,讨论开发多语言系统及解决方案。第三部分面向对象的建模基础(第8~10章),介绍实现抽象数据模型方法和类型的相关概念,提出程序验证的断言逻辑,用形式化的方法提供表示对象行为集合特征的概要。第四部分面向对象应用框架(第11~12章),讨论商务处理再设计,对象技术的Web应用及其在计算、智能、移动agent方面的新趋势。附录部分介绍Smalltalk、Eiffel、C++、Java和逻辑程序设计语言DLP,也介绍UML和CORBA IDL(用Orbacus的CORBA应用程序设计指导),提出开发中小型学期项目的建议。本书基本内容安排紧凑,并引用了许多研究文献,适合不同类型的读者,包括学生(作为课本或研究论文和项目论文的补充读物),软件工程师(作为面向对象软件开发的参考书),专业教师(作为面向对象软件开发教程的现成教材)。本书也适合其他读者,例如研究人员、程序员等,并可作为大专院校OO课程的主要教材,或者自学参考书。
《面向对象软件开发原理 原书第2版》目录

第一部分 面向对象系统设计 1

第1章 简介 1

1.1 主题与变化 1

1.1.1 对象术语 3

1.1.2 面向对象的计算 4

1.1.3 按契约设计 7

1.2 编程范例 10

1.2.1 过程化程序设计 11

1.2.2 数据抽象 12

1.2.3 面向对象编程 12

1.3 面向对象的软件生命周期 13

1.3.1 需求分析 15

1.3.2 设计 17

1.3.3 实现 18

1.4 超越面向对象吗 20

1.5 小结 22

习题 23

进一步读物 23

第2章 习惯用法和模式 24

2.1 多态性 24

2.1.1 Java中的继承和委托 25

2.1.2 C++中的多态性 27

2.1.3 C++中的断言 28

2.1.4 规范类的用法 30

2.2 hush的用法 31

2.2.1 句柄/主体用法 34

2.2.2 虚拟自引用 36

2.2.3 动态角色转换 37

2.2.4 hush编程的技巧 39

2.3 设计模式的分类 41

2.3.1 创建性模式 42

2.3.2 结构模式 43

2.3.3 行为模式 44

2.4 事件驱动的计算 46

2.4.1 reactor模式 46

2.4.2 抽象事件系统 48

2.5 小结 51

习题 52

进一步读物 53

第3章 软件工程的观点 54

3.1 软件开发方法 54

3.1.1 建模 56

3.1.2 需求工程——综合法 57

3.1.3 分析和设计方法——比较研究 58

3.2 标识对象 60

3.2.1 启发式建模 61

3.2.2 分派责任 63

3.2.3 对象角色和交互 65

3.3 契约 66

3.3.1 说明契约化责任 66

3.3.2 契约的求精 69

3.4 形式化方法 71

3.3.3 运行时一致性检查 71

3.5 小结 72

习题 74

进一步读物 74

第4章 应用开发 75

4.1 drawtool应用 75

4.2 设计准则 86

4.2.1 单个类的设计 87

4.2.2 继承和不变性 87

4.2.3 风格的客观意义 88

4.3 从规格说明到现实 90

4.3.1 结构封装与行为封装 90

4.3.2 基于模型的规格说明 91

4.3.3 抽象系统和事件 95

4.4 小结 98

习题 99

进一步读物 99

第二部分 面向对象的语言和系统 101

第5章 面向对象程序设计语言 101

5.1 对象范例 101

5.1.1 面向对象语言的分类 103

5.1.2 替代对象模型 105

5.1.3 Lisp,C和Prolog的对象扩展 105

5.1.4 脚本语言——与Java的集成 107

5.2 Smalltalk,Eiffel,C++和Java的比较 108

5.2.1 比较的标准 109

5.2.2 语言特征 110

5.3 面向对象语言的设计维度 113

5.3.1 基于对象与面向对象 113

5.3.2 关于正交化方法——类型扩展 114

5.3.3 多范例语言——逻辑程序设计 116

5.3.4 主动对象——同步Java/C++ 118

5.4 原型-委托与继承的比较 120

5.4.1 共享的替代形式 120

5.4.2 实现技巧——Self 122

5.5 元级体系结构 123

5.6 小结 125

进一步读物 127

习题 127

第6章 组件技术 128

6.1 对象与组件 128

6.1.1 定义 128

6.1.2 技术矩阵 129

6.1.3 组件神话 130

6.2 互操作性的标准 131

6.2.1 对象链接与嵌入——COM 132

6.2.2 对象请求代理——CORBA 132

6.2.3 持久对象——ODMG 134

6.3 Java平台——技术革新 136

6.4 一个基于Internet的工作组应用程序 138

6.5 crush——用CORBA扩展hush 139

6.6 小结 148

习题 149

进一步读物 149

第7章 软件体系结构 150

7.1 体系结构的元素 150

7.2 实例研究——多媒体特征检测 152

7.3 交叉边界 158

7.3.1 嵌入式逻辑——跨范例边界 159

7.3.2 本机对象——跨语言边界 160

7.3.3 Java和C++的结合 164

7.4 体系结构的模式与风格 168

7.4.1 从技术到风格 168

7.4.2 实例研究——可视化的角度 169

7.5 交叉平台开发 171

7.6 小结 172

习题 173

进一步读物 174

第三部分 面向对象建模的基础 175

第8章 抽象数据类型 175

8.1 抽象和类型 175

8.1.1 编程语言中的抽象 175

8.1.2 基本观点——类型作为约束条件 176

8.1.3 OOP类型的目标 178

8.2 代数规范说明 179

8.2.1 特征——生成器和观察器 180

8.2.2 等式——规定约束条件 182

8.2.3 初始代数语义 184

8.2.4 作为代数的对象 187

8 3 分解——模块与对象 190

8.3.1 抽象接口 191

8.3.2 表示和实现 192

8.3.3 添加新生成器 194

8.3.4 添加新观察器 196

8.4 类型与类 198

8.5 小结 201

习题 202

进一步读物 202

9.1 抽象继承 203

第9章 多态性 203

9.2 子类型关系 205

9.2.1 作为集合的类型 205

9.2.2 子类型细化关系 206

9.2.3 作为记录的对象 208

9.3 多态性的风格 210

9.4 类型抽象 212

9.4.1 简单类型演算 214

9.4.2 交叉类型 217

9.4.3 受限多态性 220

9.5 存在类型——隐藏 223

9.6 自引用 225

9.7 小结 230

进一步读物 232

习题 232

第10章 行为求精 233

10.1 作为行为的类型 233

10.2 检验行为属性 235

10.2.1 状态转换 235

10.2.2 断言逻辑 236

10.3 行为概念 238

10.4 作为行为类型的对象 241

10.4.1 抽象和表示 241

10.4.2 对应关系 244

10.5 说明行为组成 246

10.6 小结 250

习题 251

进一步读物 252

第四部分 面向对象应用框架 253

第11章 商务处理再设计 253

11.1 商务对象——San Francisco框架 253

11.2 商务处理模型 256

11.2.1 基于逻辑的模型 256

11.2.2 商务处理模拟 257

11.2.3 实例——贷款需求 259

11.3 面向对象模拟 260

11.4 可视化支持 267

11.4.1 有多少用户,就有多少视角 268

11.4.2 DIVA——分布式可视化体系结构 269

11.5 从遗留应用中迁移 271

11.6 小结 272

习题 273

进一步读物 274

第12章 Web应用 275

12.1 对象和Web 275

12.1.1 趋势和技术 276

12.1.2 ObjectWeb——CORBA/Java与微软对抗 278

12.2 Web程序设计——API的探索 280

12.2.1 计算模型 280

12.2.2 智能代理 282

12.3 DejaVU的经验——Web上的音乐演奏 284

12.4 软件体系结构回顾 289

12.5 小结 291

进一步读物 292

习题 292

附录 293

附录A Smalltalk语言 293

附录B Eiffel语言 298

附录C C++语言 302

附录D Java语言 309

附录E DLP语言 315

附录F 统一建模语言 320

附录G 接口定义语言——IDL 324

附录H Hello(CORBA)Universe 327

附录I 软件开发项目 336

附录J 习题答案 338

参考文献 345

返回顶部