《面向对象的思考过程 第2版》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:(美)Matt Weisfeld著;杨会珍,尹清辽等译
  • 出 版 社:北京:中国水利水电出版社
  • 出版年份:2004
  • ISBN:7508422910
  • 页数:196 页
图书介绍:这本由程序员所编写的面向对象的思考过程,针对的是想要学习面向对象技术的程序员,或者是只想理解它们所处理哪种问题的管理人员。这本书为面向对象程序设计提供了一种面向解决方案的方法。了解面向对象的设计以及对象的继承或者组合、对象聚合和关联、接口和实现之间的区别。从此成为面向对象开发领域的一名更能干的、更优秀的程序员。这个修改之后的版本包括更多的例子以及一些新的章节,这些章节解释了对象如何与.NET、XML、Java、数据库和Web服务相关联。适合的读者包括设计人员、开发人员、项目管理人员以及任何想要总体了解面向对象的人。

目录 1

译者序 1

前言 1

致谢 1

第1章 面向对象的概念简介 1

1.1 面向过程程序设计和OO程序设计 1

1.2 从面向过程开发转向面向对象开发 4

1.2.1 面向过程的程序设计 4

1.2.2 OO程序设计 4

1.3 对象的确切定义 5

1.3.1 对象数据 5

1.3.2 对象行为 5

1.4.1 类是对象模板 8

1.4 类的确切定义 8

1.4.2 属性 9

1.4.3 方法 9

1.4.4 消息 10

1.5 使用UML构建类图 10

1.6 封装 10

1.6.1 接口 11

1.6.2 实现 11

1.6.3 接口/实现范例的现实例子 11

1.6.4 接口/实现范例的Java例子 12

1.7 继承 13

1.7.1 超类和子类 14

1.7.2 抽象 14

1.7.3 Is-a关系 15

1.8 多态 16

1.9 组合 18

1.10 小结 18

第2章 如何以对象的方式进行思考 20

2.1 了解接口和实现的区别 20

2.1.1 接口 22

2.1.2 实现 22

2.1.3 接口/实现的例子 22

2.2 在设计接口时使用抽象的思想 26

2.3 尽可能向用户提供最少的接口 27

2.3.1 确定用户 28

2.3.2 对象行为 28

2.3.3 环境限制 28

2.3.5 确定实现 29

2.3.4 确定公共接口 29

2.4 小结 30

2.5 参考文献 30

第3章 高级的面向对象概念 31

3.1 构造函数 31

3.1.1 何时调用构造函数 31

3.1.2 构造函数的内部机理 31

3.1.3 默认构造函数 32

3.1.4 使用多个构造函数 32

3.1.5 设计构造函数 36

3.2 错误处理 36

3.2.1 忽略问题 36

3.2.2 检测问题并异常终止应用程序 36

3.2.4 抛出异常 37

3.2.3 检测问题并且尝试解决问题 37

3.3 作用域的概念 39

3.3.1 局部属性 39

3.3.2 对象属性 40

3.3.3 类的属性 42

3.4 运算符重载 43

3.5 多重继承 43

3.6 对象操作 44

3.7 小结 45

3.8 参考文献 45

第4章 类的剖析 46

4.1 类的名称 46

4.2 注释 47

4.3 属性 48

4.4 构造函数 49

4.5 访问函数 50

4.6 公共接口方法 52

4.7 私有实现方法 53

4.8 小结 53

4.9 参考文献 53

第5章 类设计指导 54

5.1 标识公共接口 54

5.2 设计健壮的构造函数(或析构函数) 56

5.3 在类中设计错误处理 57

5.3.1 用文档说明类以及使用注释 57

5.3.2 带着协作的意向创建对象 57

5.5 设计时考虑扩展 58

5.4 在设计时考虑到重用 58

5.5.1 使名称形象化 59

5.5.2 提取不能移植的代码 59

5.5.3 提供复制和比较对象的方法 59

5.5.4 尽可能使作用域最小 60

5.5.5 类应该对自己负责 60

5.6 在设计时考虑可维护性 61

5.6.1 使用迭代 62

5.6.2 测试接口 62

5.7 使用对象持久性 64

5.8 小结 65

5.9 参考文献 65

6.1 设计指导 66

第6章 使用对象进行设计 66

6.1.1 进行正确的分析 69

6.1.2 制作工作陈述 69

6.1.3 收集需求 69

6.1.4 开发用户接口原型 70

6.1.5 确定类 70

6.1.6 确定每一个类的职责 70

6.1.7 确定类和类之间如何相互作用 70

6.1.8 创建类模型来描述系统 70

6.2 案例分析:Blackjack(扑克牌中的二十一点)例子 71

6.2.1 使用CRC卡片 72

6.2.2 确定Blackjack的类 73

6.2.3 确定类的职责 76

6.2.4 UML用例:确定协作 80

6.2.5 制作CRC卡片的第一步 83

6.2.6 UML类图:对象模型 85

6.2.7 为用户接口设计原型 86

6.3 小结 86

6.4 参考文献 86

第7章 掌握继承和组合 87

7.1 继承 88

7.1.1 泛化和特化 90

7.1.2 设计决策 90

7.2 组合 92

7.3 为什么封装对OO很重要 94

7.3.1 继承是如何削弱封装的 95

7.3.2 一个详细的多态例子 96

7.3.3 对象的职责 97

7.5 参考文献 100

7.4 小结 100

第8章 框架和重用:利用接口和抽象类进行设计 101

8.1 代码的重用 101

8.2 什么是框架 101

8.3 什么是契约 103

8.3.1 抽象类 104

8.3.2 接口 105

8.3.3 尝试一起使用它们 107

8.3.4 编译器证据 109

8.3.5 制定契约 109

8.3.6 系统插入点 111

8.4 一个电子商务的例子 111

8.4.1 电子商务的问题 111

8.4.2 非重用方法 112

8.4.3 电子商务解决方案 114

8.4.4 UML对象模型 114

8.5 小结 117

8.6 参考文献 117

第9章 创建对象 118

9.1 组合关系 119

9.2 协调地创建 119

9.3 组合的类型 121

9.3.1 聚合 121

9.3.2 关联 122

9.3.3 同时使用聚合和关联 123

9.4 避免依赖性 123

9.5 基数(Cardinality) 124

9.5.1 多个对象的关联 126

9.5.2 可选的关联 127

9.6 同时使用这些关系:一个例子 127

9.7 小结 128

9.8 参考文献 128

第10章 使用UML创建对象模型 129

10.1 什么是UML 129

10.2 类图的结构 130

10.3 属性和方法 131

10.3.1 属性 131

10.3.2 方法 131

10.4 访问标号 132

10.5 继承 132

10.7.1 聚合 134

10.6 接口 134

10.7 组合 134

10.7.2 关联 135

10.8 基数 137

10.9 小结 138

10.10 参考文献 138

第11章 持久对象:串行化和关系数据库 139

11.1 持久对象的基础 139

11.2 把对象保存到“扁平”文件中 140

11.2.1 串行化某个文件 141

11.2.2 回顾实现和接口 142

11.3 写入关系数据库中 143

11.4 加载驱动程序 146

11.4.2 SQL语句 147

11.4.1 建立连接 147

11.5 小结 150

11.6 参考文献 150

第12章 对象和XML:可移植的数据 151

12.1 可移植代码 151

12.2 可扩展标记语言(XML) 152

12.3 XML与HTML 153

12.4 XML和面向对象语言 153

12.5 在两个公司之间共享数据 154

12.6 用文档类型定义检验文档 155

12.7 把DTD集成到XML文档中 156

12.8 使用层叠式样式表 161

12.10 参考文献 163

12.9 小结 163

第13章 对象和Internet 164

13.1 基于对象的脚本编写语言 164

13.2 一个JavaScript验证的例子 166

13.3 Java Applets是对象 170

13.4 JavaBeans是对象 172

13.5 小结 174

13.6 参考文献 174

第14章 分布式对象和企业 175

14.1 公共对象请求代理体系结构(CORBA) 176

14.2 Java的远程方法调用(RMI) 179

14.3 Java的Enterprise JavaBeans 180

14.4 企业JavaBeans的类型 182

14.4.2 实体beans 183

14.4.1 会话beans 183

14.5 小结 184

14.6 参考文献 184

第15章 设计模式 185

15.1 为什么需要设计模式 185

15.2 Smalltalk的模型/视图/控制器 186

15.3 设计模式的类型 188

15.3.1 创建模式 188

15.3.2 结构模式 191

15.3.3 行为模式 194

15.4 反模式 195

15.5 小结 196

15.6 参考文献 196