| 作 者: | Bruce Wampler 王海鹏 |
| 出版社: | 人民邮电出版社 |
| 丛编项: | 软件工程系列教材 |
| 版权说明: | 本书为公共版权或经版权方授权,请支持正版图书 |
| 标 签: | JAVA语言 面向对象语言 程序设计 教材 |
| ISBN | 出版时间 | 包装 | 开本 | 页数 | 字数 |
|---|---|---|---|---|---|
| 未知 | 暂无 | 暂无 | 未知 | 0 | 暂无 |
第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
词汇表