书籍详情
Java与UML面向对象程序设计
作者:( )Bruce E.Wampler著;王海鹏译
出版社:人民邮电出版社
出版时间:2002-01-01
ISBN:9787115106032
定价:¥28.00
购买这本书可以去
内容简介
本书旨在介绍使用Java和UML开发面向对象的软件所必需的知识,并将伴您走上使用Java进行真正面向对象软件开发的道路。本书共分12章。本书的前4章介绍了面向对象的精髓,第1章是关于对象的简介。第2章介绍了面向对象的基本概念以及UML的一些基本知识。第3章阐述了如何使用Java来编写面向对象程序。第4章介绍面向对象的分析和设计。第5章使用这些面向对象观点分析了图形用户界面(GUI)和Java Swing类库。第6章以一个小规模的Java应用程序为实例,将前5章的内容结合到一起。接下来的章节让您对面向对象编程的实践方面有较好的了解。第7章介绍了设计模式。第8章介绍软件重构。第9章简要介绍针对大规模和小规模的面向对象软件项目以及当前的一些主要开发方法。第10章介绍当前一些面向对象软件开发的工具软件。第11章给出了作者为开发更好的软件而提出一些指导意见。最后,第12章提供了关于面向对象软件和Java方面更多的学习资源。本书强调理论和设计相结合,重视对软件开发方法学有指导作用的重要概念。本书可作为高等学校计算机科学系及软件学院高年级学生和研究生的教科书,也可作为从事软件开发的管理者、系统分析员、程序员在学习面向对象程序设计时的参考书。
作者简介
BruceE.Wampler是ObjectCentral公司的创办者和CEO。他是在个人计算机上开发拼写检查和语法检查的早期程序员之一。他曾是ReferenceSoftwareInternational公司的共同创办者之一。该公司后来被WordPperfect并购。他开发并发布了许多成功的、在真实世界中运行的应用程序和一些被广泛采用的开放源代码面向对象编程工具。在他个人丰富的职业生涯中,曾在Sandia美国国家实验室工作过,并在新墨西哥州大学担任过教职。
目录
第1章 对象、UML和Java 1
1.1 面向对象技术 2
1.2 面向对象程序设计语言 3
1.3 面向对象的设计和UML 3
1.4 对象的回报 4
1.5 本章小结 4
第2章 对象的精髓 5
2.1 什么是面向对象系统 6
2.1.1 面向对象系统的基本特性 7
2.1.2 利用对象进行抽象 8
2.1.3 封装的类 9
2.1.4 通过消息进行通信 9
2.1.5 对象生命周期 10
2.1.6 类层次结构 12
2.1.7 多态性 16
2.2 一个例子:体现前面所讲的概念 18
2.3 其他面向对象概念 19
2.3.1 抽象类 19
2.3.2 方法的可见性 20
2.3.3 类与实例 21
2.3.4 访问对象 22
2.3.5 对象的低层次视图 22
2.4 本章小结 23
2.5 参考资源 24
2.6 本章注释 24
第3章 Java中的对象 25
3.1 在Java中定义类 25
3.2 可见性 29
3.3 继承 31
3.4 关联、聚合与组合 37
3.5 Java接口 39
3.6 Java中对象的生命周期 41
3.6.1 构造方法 41
3.6.2 垃圾收集 41
3.6.3 内存泄漏 42
3.7 类方法、类属性与实例方法、实例属性 42
3.8 对象拷贝 43
3.9 消息 49
3.10 本章小结 49
3.11 参考资源 50
3.12 本章注释 50
第4章 面向对象的分析和设计 51
4.1 软件开发方法学 53
4.2 软件项目的要素 54
4.3 面向对象分析的精髓 56
4.3.1 对象发现 57
4.3.2 评估候选对象 58
4.3.3 确定对象层次结构 60
4.3.4 发现对象属性 61
4.3.5 发现对象操作 61
4.4 对象设计精髓 63
4.5 一些设计指南 65
4.5.1 从整体上把握 65
4.5.2 封装 66
4.5.3 设计类 66
4.5.4 继承 67
4.5.5 通用指南 67
4.6 建造和发布阶段 68
4.6.1 建造软件 68
4.6.2 发布软件 69
4.7 UML的更多知识 70
4.8 本章小结 71
4.9 参考资源 72
4.10 本章注释 72
第5章 用Swing实现面向对象的图形用户界面 73
5.1 图形用户界面 74
5.1.1 典型应用程序 74
5.1.2 对话框 74
5.1.3 事件 75
5.2 Swing简介 76
5.2.1 处理Swing命令事件 79
5.2.2 一些选项 85
5.3 MVC:模型/视图/控制器 86
5.3.1 用Java实现MVC 87
5.3.2 一个小的Swing MVC GUI框架 88
5.3.3 一个基于Wmvc的简单应用程序 98
5.3.4 温度计的UML时序图 103
5.4 本章小结 104
5.5 参考资源 104
5.6 本章注释 105
第6章 使用Java的实例研究 107
6.1 分析MovieCat 108
6.1.1 用况 108
6.1.2 发现对象、属性和操作 109
6.1.3 评估 111
6.2 设计MovieCat 111
6.2.1 Movie类 112
6.2.2 MovieModel类 114
6.2.3 视图类 115
6.2.4 将它们结合起来 117
6.3 实现MovieCat 117
6.3.1 MovieCat类 117
6.3.2 Movie类 119
6.3.3 MovieModel类 121
6.3.4 MainView类 125
6.3.5 MovieListView类 129
6.3.6 MovieItemView类 131
6.3.7 MovieEditor类 135
6.3.8 Movie的辅助类 138
6.4 回顾 141
6.5 本章小结 142
6.6 本章注释 142
第7章 设计模式 143
7.1 什么是设计模式 143
7.1.1 使用设计模式 144
7.1.2 设计模式描述模板 144
7.2 GoF设计模式 145
7.2.1 创建型模式 145
7.2.2 结构型模式 145
7.2.3 行为型模式 146
7.3 Wmvc和MovieCat使用设计模式的例子 147
7.3.1 MVC 147
7.3.2 Observer模式 148
7.3.3 Wmvc中的Observer模式 150
7.3.4 Wmvc中的Command模式 151
7.3.5 Wmvc和MovieCat中用到的其他模式 152
7.4 本章小结 152
7.5 参考资源 152
第8章 重构 153
8.1 什么是重构 154
8.1.1 基本重构过程 154
8.2 何时需要重构 155
8.2.1 代码味道 155
8.2.2 何时不要重构 156
8.3 一些重构技术 156
8.3.1 重构分类 156
8.3.2 一些重构技术 157
8.4 本章小结 158
8.5 参考资源 158
第9章 今日软件开发方法学 159
9.1 大规模项目适用的方法学 160
9.1.1 统一软件过程概述 160
9.1.2 基本概念 160
9.2 适用于小项目的敏捷方法学 162
9.2.1 敏捷联盟 162
9.2.2 极限编程 163
9.2.3 DSDM 165
9.2.4 Crystal/Adaptive软件开发方法 166
9.3 开放源代码开发 166
9.3.1 开放源代码是分布式开发 167
9.4 本章小结 168
9.5 参考资源 168
9.6 本章注释 169
第10章 面向对象开发的软件工具 171
10.1 GUI与控制台 171
10.2 编辑器和IDE 172
10.2.1 好编辑器的特征 172
10.2.2 三种类型的编辑器 173
10.2.3 Emacs 174
10.2.4 Vi 174
10.2.5 集成开发环境 175
10.2.6 VIDE 176
10.2.7 Borland JBuilder 176
10.2.8 Sun Forte 178
10.2.9 其他IDE 179
10.3 源代码控制 179
10.4 CASE、建模和UML工具 179
10.4.1 ArgoUML 180
10.4.2 MagicDraw 180
10.4.3 Rational软件公司 181
10.4.4 TogetherSoft 181
10.4.5 其他UML工具 181
10.4.6 其他Java工具 182
10.5 本章注释 182
第11章 编程:个人观点 183
11.1 编程 184
11.1.1 代码不会消亡 184
11.1.2 用好的风格编程 185
11.1.3 清楚自己在做什么 185
11.1.4 写试验性代码 185
11.1.5 实践增量编程 186
11.1.6 工具很重要 186
11.1.7 对象确实有帮助 186
11.1.8 测试 186
11.1.9 调试 187
11.1.10 不要重新发明轮子 187
11.1.11 有时自己做更好 187
11.1.12 任何时候都可能产生好主意 188
11.1.13 拥有生活 188
11.1.14 计划很重要 188
11.2 工具 189
11.2.1 编辑器很重要 189
11.2.2 了解经时间检验的工具 189
11.2.3 了解最新的工具 189
11.2.4 工具会消失 189
11.3 工作环境 190
11.3.1 快乐的程序员是高效的程序员 190
11.3.2 物理环境 190
11.3.3 灵活性 190
11.3.4 40小时 191
11.3.5 团队 191
11.3.6 市场营销很重要 191
11.3.7 保持不过时 192
11.3.8 共同奋斗 192
11.3.9 让程序员协助制定策略 192
11.3.10 让老板知道您需要什么 192
11.3.11 Reference软件公司的故事 192
11.4 编程资源 193
11.4.1 使用互联网 193
11.4.2 当心互联网 193
11.4.3 如果可能,用开放源代码 193
11.4.4 其他程序员 193
11.4.5 网站 194
11.5 本章注释 194
第12章 下一步 195
12.1 面向对象技术 195
12.2 Java 196
12.3 需要了解的更多术语 196
12.3.1 分布式计算术语 196
12.3.2 来自Sun公司的Java相关术语 197
12.3.3 其他术语 198
词汇表
1.1 面向对象技术 2
1.2 面向对象程序设计语言 3
1.3 面向对象的设计和UML 3
1.4 对象的回报 4
1.5 本章小结 4
第2章 对象的精髓 5
2.1 什么是面向对象系统 6
2.1.1 面向对象系统的基本特性 7
2.1.2 利用对象进行抽象 8
2.1.3 封装的类 9
2.1.4 通过消息进行通信 9
2.1.5 对象生命周期 10
2.1.6 类层次结构 12
2.1.7 多态性 16
2.2 一个例子:体现前面所讲的概念 18
2.3 其他面向对象概念 19
2.3.1 抽象类 19
2.3.2 方法的可见性 20
2.3.3 类与实例 21
2.3.4 访问对象 22
2.3.5 对象的低层次视图 22
2.4 本章小结 23
2.5 参考资源 24
2.6 本章注释 24
第3章 Java中的对象 25
3.1 在Java中定义类 25
3.2 可见性 29
3.3 继承 31
3.4 关联、聚合与组合 37
3.5 Java接口 39
3.6 Java中对象的生命周期 41
3.6.1 构造方法 41
3.6.2 垃圾收集 41
3.6.3 内存泄漏 42
3.7 类方法、类属性与实例方法、实例属性 42
3.8 对象拷贝 43
3.9 消息 49
3.10 本章小结 49
3.11 参考资源 50
3.12 本章注释 50
第4章 面向对象的分析和设计 51
4.1 软件开发方法学 53
4.2 软件项目的要素 54
4.3 面向对象分析的精髓 56
4.3.1 对象发现 57
4.3.2 评估候选对象 58
4.3.3 确定对象层次结构 60
4.3.4 发现对象属性 61
4.3.5 发现对象操作 61
4.4 对象设计精髓 63
4.5 一些设计指南 65
4.5.1 从整体上把握 65
4.5.2 封装 66
4.5.3 设计类 66
4.5.4 继承 67
4.5.5 通用指南 67
4.6 建造和发布阶段 68
4.6.1 建造软件 68
4.6.2 发布软件 69
4.7 UML的更多知识 70
4.8 本章小结 71
4.9 参考资源 72
4.10 本章注释 72
第5章 用Swing实现面向对象的图形用户界面 73
5.1 图形用户界面 74
5.1.1 典型应用程序 74
5.1.2 对话框 74
5.1.3 事件 75
5.2 Swing简介 76
5.2.1 处理Swing命令事件 79
5.2.2 一些选项 85
5.3 MVC:模型/视图/控制器 86
5.3.1 用Java实现MVC 87
5.3.2 一个小的Swing MVC GUI框架 88
5.3.3 一个基于Wmvc的简单应用程序 98
5.3.4 温度计的UML时序图 103
5.4 本章小结 104
5.5 参考资源 104
5.6 本章注释 105
第6章 使用Java的实例研究 107
6.1 分析MovieCat 108
6.1.1 用况 108
6.1.2 发现对象、属性和操作 109
6.1.3 评估 111
6.2 设计MovieCat 111
6.2.1 Movie类 112
6.2.2 MovieModel类 114
6.2.3 视图类 115
6.2.4 将它们结合起来 117
6.3 实现MovieCat 117
6.3.1 MovieCat类 117
6.3.2 Movie类 119
6.3.3 MovieModel类 121
6.3.4 MainView类 125
6.3.5 MovieListView类 129
6.3.6 MovieItemView类 131
6.3.7 MovieEditor类 135
6.3.8 Movie的辅助类 138
6.4 回顾 141
6.5 本章小结 142
6.6 本章注释 142
第7章 设计模式 143
7.1 什么是设计模式 143
7.1.1 使用设计模式 144
7.1.2 设计模式描述模板 144
7.2 GoF设计模式 145
7.2.1 创建型模式 145
7.2.2 结构型模式 145
7.2.3 行为型模式 146
7.3 Wmvc和MovieCat使用设计模式的例子 147
7.3.1 MVC 147
7.3.2 Observer模式 148
7.3.3 Wmvc中的Observer模式 150
7.3.4 Wmvc中的Command模式 151
7.3.5 Wmvc和MovieCat中用到的其他模式 152
7.4 本章小结 152
7.5 参考资源 152
第8章 重构 153
8.1 什么是重构 154
8.1.1 基本重构过程 154
8.2 何时需要重构 155
8.2.1 代码味道 155
8.2.2 何时不要重构 156
8.3 一些重构技术 156
8.3.1 重构分类 156
8.3.2 一些重构技术 157
8.4 本章小结 158
8.5 参考资源 158
第9章 今日软件开发方法学 159
9.1 大规模项目适用的方法学 160
9.1.1 统一软件过程概述 160
9.1.2 基本概念 160
9.2 适用于小项目的敏捷方法学 162
9.2.1 敏捷联盟 162
9.2.2 极限编程 163
9.2.3 DSDM 165
9.2.4 Crystal/Adaptive软件开发方法 166
9.3 开放源代码开发 166
9.3.1 开放源代码是分布式开发 167
9.4 本章小结 168
9.5 参考资源 168
9.6 本章注释 169
第10章 面向对象开发的软件工具 171
10.1 GUI与控制台 171
10.2 编辑器和IDE 172
10.2.1 好编辑器的特征 172
10.2.2 三种类型的编辑器 173
10.2.3 Emacs 174
10.2.4 Vi 174
10.2.5 集成开发环境 175
10.2.6 VIDE 176
10.2.7 Borland JBuilder 176
10.2.8 Sun Forte 178
10.2.9 其他IDE 179
10.3 源代码控制 179
10.4 CASE、建模和UML工具 179
10.4.1 ArgoUML 180
10.4.2 MagicDraw 180
10.4.3 Rational软件公司 181
10.4.4 TogetherSoft 181
10.4.5 其他UML工具 181
10.4.6 其他Java工具 182
10.5 本章注释 182
第11章 编程:个人观点 183
11.1 编程 184
11.1.1 代码不会消亡 184
11.1.2 用好的风格编程 185
11.1.3 清楚自己在做什么 185
11.1.4 写试验性代码 185
11.1.5 实践增量编程 186
11.1.6 工具很重要 186
11.1.7 对象确实有帮助 186
11.1.8 测试 186
11.1.9 调试 187
11.1.10 不要重新发明轮子 187
11.1.11 有时自己做更好 187
11.1.12 任何时候都可能产生好主意 188
11.1.13 拥有生活 188
11.1.14 计划很重要 188
11.2 工具 189
11.2.1 编辑器很重要 189
11.2.2 了解经时间检验的工具 189
11.2.3 了解最新的工具 189
11.2.4 工具会消失 189
11.3 工作环境 190
11.3.1 快乐的程序员是高效的程序员 190
11.3.2 物理环境 190
11.3.3 灵活性 190
11.3.4 40小时 191
11.3.5 团队 191
11.3.6 市场营销很重要 191
11.3.7 保持不过时 192
11.3.8 共同奋斗 192
11.3.9 让程序员协助制定策略 192
11.3.10 让老板知道您需要什么 192
11.3.11 Reference软件公司的故事 192
11.4 编程资源 193
11.4.1 使用互联网 193
11.4.2 当心互联网 193
11.4.3 如果可能,用开放源代码 193
11.4.4 其他程序员 193
11.4.5 网站 194
11.5 本章注释 194
第12章 下一步 195
12.1 面向对象技术 195
12.2 Java 196
12.3 需要了解的更多术语 196
12.3.1 分布式计算术语 196
12.3.2 来自Sun公司的Java相关术语 197
12.3.3 其他术语 198
词汇表
猜您喜欢