《写给大家看的面向对象编程书 第3版》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:(美)Matt Weisfeld著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2009
  • ISBN:9787115197764
  • 页数:266 页
图书介绍:面向对象程序设计(OOP)是现代程序设计语言的基本概念,本书首先结合代码示例讲述了面向对象的相关概念,然后深入分析了如何以对象方式思考。此外,书中讨论了一些与面向对象概念密切相关的应用主题,包括XML、UML建模语言、持久存储、分布式计算和客户/服务器技术等。本书内容精炼,示例简单明了,适合所有的面向对象开发人员。

第1章 面向对象概念介绍 1

1.1过程式程序设计与OO程序设计 2

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

1.2.1过程式程序设计 5

1.2.2 OO程序设计 5

1.3对象到底是什么 5

1.3.1对象数据 5

1.3.2对象行为 6

1.4类到底是什么 9

1.4.1类是对象模板 9

1.4.2属性 11

1.4.3方法 11

1.4.4消息 11

1.5使用UML完成类图建模 12

1.6封装和数据隐藏 12

1.6.1接口 12

1.6.2实现 13

1.6.3接口/实现范型的一个实际例子 13

1.6.4接口/实现范型的模型 14

1.7继承 15

1.7.1超类和子类 16

1.7.2抽象 16

1.7.3 is-a关系 17

1.8多态 18

1.9组合 20

1.9.1抽象 21

1.9.2 has-a关系 21

1.10小结 21

1.11本章使用的示例代码 21

1.11.1 TestPerson示例:C#.NET 21

1.11.2 TestPerson示例:VB.NET 22

1.11.3 TestShape示例:C#.NET 23

1.11.4 TestShape示例:VB.NET 25

第2章 如何以对象方式思考 27

2.1了解接口与实现之间的区别 28

2.1.1接口 29

2.1.2实现 29

2.1.3接口/实现示例 29

2.2设计接口时使用抽象思维 33

2.3尽可能为用户提供最小接口 35

2.3.1确定用户 35

2.3.2对象行为 36

2.3.3环境约束 36

2.3.4明确公共接口 36

2.3.5明确实现 37

2.4小结 37

2.5参考书目 38

第3章 高级面向对象概念 39

3.1构造函数 39

3.1.1何时调用构造函数 39

3.1.2构造函数中有什么 40

3.1.3默认构造函数 40

3.1.4使用多个构造函数 41

3.1.5构造函数的设计 44

3.2错误处理 44

3.2.1忽略问题 45

3.2.2检查问题并中止应用 45

3.2.3检查问题并尝试恢复 45

3.2.4抛出异常 45

3.3作用域概念 47

3.3.1局部属性 48

3.3.2对象属性 49

3.3.3类属性 50

3.4操作符重载 51

3.5多重继承 52

3.6对象操作 53

3.7小结 54

3.8参考书目 54

3.9本章使用的示例代码 54

3.9.1 TestNumber示例:C#.NET 54

3.9.2 TestNumber示例:VB.NET 55

第4章 类剖析 57

4.1类名 57

4.2注释 58

4.3属性 59

4.4构造函数 60

4.5访问方法 62

4.6公共接口方法 63

4.7私有实现方法 64

4.8小结 64

4.9参考书目 64

4.10本章使用的示例代码 65

4.10.1 TestCab示例:C#.NET 65

4.10.2 TestCab示例:VB.NET 66

第5章 类设计指导原则 68

5.1真实世界系统建模 68

5.2明确公共接口 69

5.2.1最小公共接口 69

5.2.2隐藏实现 69

5.3设计健壮的构造函数(和析构函数) 70

5.4在类中设计错误处理 70

5.4.1对类建立文档以及使用注释 71

5.4.2构建类要以合作为出发点 71

5.5设计时充分考虑重用 72

5.6设计时充分考虑到可扩展性 72

5.6.1名字要有描述性 72

5.6.2抽出不可移植的代码 72

5.6.3提供一种复制和比较对象的方法 73

5.6.4让作用域尽可能小 73

5.6.5类应当对自己负责 74

5.7设计时充分考虑可维护性 75

5.7.1使用迭代 76

5.7.2测试接口 76

5.8使用对象持久性 78

5.9小结 79

5.10参考书目 79

5.11本章使用的示例代码 79

5.11.1 TestMath示例:C#.NET 79

5.11.2 TestMath示例:VB.NET 80

第6章 利用对象实现设计 81

6.1设计指导原则 81

6.1.1完成适当的分析 84

6.1.2建立工作陈述 84

6.1.3收集需求 84

6.1.4开发用户界面的原型 85

6.1.5明确类 85

6.1.6确定各个类的职责 85

6.1.7确定类如何相互合作 85

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

6.2案例研究:blackjack示例 86

6.2.1使用CRC卡 87

6.2.2明确blackjack类 88

6.2.3明确类的职责 90

6.2.4 UML用例:明确协作关系 95

6.2.5第一轮CRC卡 98

6.2.6 UML类图:对象模型 99

6.2.7建立用户界面原型 100

6.3小结 101

6.4参考书目 101

第7章 掌握继承和组合 102

7.1重用对象 102

7.2继承 103

7.2.1一般化和特殊化 105

7.2.2设计决策 105

7.3组合 107

7.4为什么封装在OO中如此重要 109

7.4.1继承如何削弱封装 109

7.4.2多态的一个详细例子 111

7.4.3对象职责 111

7.5小结 115

7.6参考书目 115

7.7本章使用的示例代码 115

7.7.1 TestShape示例:C#.NET 115

7.7.2 TestShape示例:VB.NET 117

第8章 框架与重用:使用接口和抽象类实现设计 119

8.1代码:重用还是不重用 119

8.2什么是框架 119

8.3什么是契约 121

8.3.1抽象类 122

8.3.2接口 124

8.3.3集成 125

8.3.4编译器的证明 127

8.3.5建立契约 128

8.3.6系统插入点 130

8.4一个电子商务例子 130

8.4.1电子商务问题 130

8.4.2非重用的方法 131

8.4.3一个电子商务解决方案 133

8.4.4 UML对象模型 133

8.5小结 137

8.6参考书目 137

8.7本章使用的示例代码 138

8.7.1 TestShape示例:C#.NET 138

8.7.2 TestShape示例:VB.NET 140

第9章 构建对象 143

9.1组合关系 143

9.2分阶段构建 144

9.3不同类型的组合 146

9.3.1聚集 146

9.3.2关联 146

9.3.3结合使用关联和聚集 148

9.4避免依赖性 148

9.5基数 149

9.5.1多个对象关联 151

9.5.2可选关联 151

9.6集成示例 152

9.7小结 152

9.8参考书目 153

第10章 用UML创建对象模型 154

10.1什么是UML 154

10.2类图的结构 155

10.3属性和方法 156

10.3.1属性 156

10.3.2方法 157

10.4访问指示 157

10.5继承 158

10.6接口 159

10.7组合 160

10.7.1聚集 160

10.7.2关联 161

10.8基数 161

10.9小结 162

10.10参考书目 163

第11章 对象和可移植数据:XML 164

11.1可移植数据 164

11.2 XML 165

11.3 XML与HTML 166

11.4 XML和面向对象语言 166

11.5两个公司间共享数据 167

11.6用DTD验证文档 168

11.7将DTD集成到XML文档 170

11.8使用层叠样式表 175

11.9小结 177

11.10参考书目 177

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

12.1持久对象基础 178

12.2将对象保存到平面文件 179

12.2.1串行化文件 180

12.2.2再谈实现和接口 182

12.2.3方法如何保存 183

12.3串行化过程中使用XML 183

12.4写至关系数据库 186

12.5加载驱动程序 189

12.5.1建立连接 189

12.5.2 SQL语句 190

12.6小结 192

12.7参考书目 192

12.8本章使用的示例代码 192

12.8.1 Person类示例:C#.NET 193

12.8.2 Person类示例:VB.NET 195

第13章 对象与因特网 197

13.1分布式计算的演进 197

13.2基于对象的脚本语言 197

13.3 JavaScript验证示例 200

13.4 Web页面中的对象 202

13.4.1 JavaScript对象 202

13.4.2 Web页面控件 204

13.4.3声音播放器 205

13.4.4电影播放器 205

13.4.5 Flash 206

13.5分布式对象和企业 206

13.5.1公共对象请求代理体系结构(CORBA) 207

13.5.2 Web服务定义 210

13.5.3 Web服务代码 213

13.5.4 Invoice.cs 214

13.5.5 Invoice.vb 215

13.6小结 216

13.7参考书目 216

第14章 对象和客户/服务器应用 217

14.1客户/服务器方法 217

14.2专有方法 217

14.2.1串行化对象代码 218

14.2.2客户代码 218

14.2.3服务器代码 220

14.2.4运行专有的客户/服务器示例 222

14.3非专有方法 223

14.3.1对象定义代码 223

14.3.2客户代码 224

14.3.3服务器代码 225

14.3.4运行非专有的客户/服务器示例 227

14.4小结 228

14.5参考书目 228

14.6本章使用的示例代码 228

14.6.1客户/服务器示例——VB.NET:对象定义代码 228

14.6.2客户/服务器示例——VB.NET:客户代码 229

14.6.3客户/服务器示例——VB.NET:服务器代码 230

第15章 设计模式 232

15.1为什么研究设计模式 232

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

15.3设计模式的不同类型 234

15.3.1创建型模式 235

15.3.2结构型模式 239

15.3.3行为型模式 241

15.4反模式 242

15.5小结 243

15.6参考书目 243

15.7本章使用的示例代码 243

15.7.1 C#.NET 244

15.7.2 VB.NET 247

索引 250