第1章 程序设计概述 1
1.1 程序与程序设计 1
1.1.1 程序与软件 1
1.1.2 程序设计的内涵 2
1.1.3 程序设计的表示方法 4
1.2 程序设计方法的发展 8
1.2.1 面向计算机的程序设计 8
1.2.2 面向过程的程序设计 8
1.2.3 面向对象的程序设计 9
1.2.4 面向组件的程序设计 11
1.2.5 其他程序设计方法 12
小结 14
习题1 14
第2章 程序设计语言与环境 15
2.1 计算机语言 15
2.1.1 计算机语言的特点 15
2.1.2 计算机语言的发展 16
2.2 运行环境与开发环境 21
2.2.1 运行环境 21
2.2.2 开发环境 23
小结 32
习题2 32
第3章 结构化程序设计方法 33
3.1 结构化程序设计的基本思想 33
3.1.1 结构化程序设计的特征 33
3.1.2 结构化程序设计的思想 35
3.2 结构化程序设计的原则和方法 36
3.2.1 结构化程序设计的原则 36
3.2.2 结构化程序设计的步骤 36
3.2.3 N-S图 37
3.3 逐步求精的设计方法 40
3.4 非结构化程序到结构化程序的转化 46
3.4.1 重复编码法 46
3.4.2 条件复合技术 46
3.4.3 布尔标志技术 47
3.5 结构化程序的正确性验证 49
3.5.1 部分正确性证明方法 50
3.5.2 终止性证明方法 55
小结 59
习题3 59
第4章 面向对象程序设计方法 61
4.1 基本概念 61
4.1.1 对象、类和实例 61
4.1.2 封装、继承和多态 62
4.1.3 类之间的关系 63
4.2 统一建模语言(UML) 65
4.2.1 UML概览 65
4.2.2 UML的常用图 66
4.3 面向对象程序分析与设计 72
4.3.1 面向对象的分析 72
4.3.2 面向对象的设计 73
4.4 面向对象分析与设计的实例 74
4.4.1 系统对象模型的建立 76
4.4.2 系统动态模型的建立 82
4.4.3 系统功能模型的建立 84
4.4.4 定义服务 85
小结 85
习题4 86
第5章 面向对象程序设计的基本原则 87
5.1 基本原则的内容 87
5.2 单一职责原则 87
5.3 开放—封闭原则 89
5.4 里氏代换原则 90
5.5 依赖倒转原则 91
5.6 接口隔离原则 92
5.7 迪米特法则 93
5.7.1 狭义的迪米特法则 94
5.7.2 广义的迪米特法则 95
5.8 合成/聚合复用原则 95
小结 96
习题5 97
第6章 设计模式 98
6.1 基本概念 98
6.1.1 设计模式的基本概念 98
6.1.2 设计模式的分类 99
6.2 几种典型的设计模式 102
6.2.1 工厂方法(Factory Method)模式 103
6.2.2 策略(Strategy)模式 106
6.2.3 适配器(Adapter)模式 109
6.2.4 门面(Facade)模式 112
6.2.5 观察者(Observer)模式 115
6.3 设计模式的选择和使用 120
6.3.1 设计模式的选择 120
6.3.2 怎样使用设计模式 122
小结 122
习题6 123
第7章 程序设计优化 124
7.1 程序优化的基本方法 124
7.1.1 程序优化的内容与原则 124
7.1.2 常用的程序优化方法 125
7.2 常用高级程序语言的优化 129
7.2.1 C程序的常用优化方法 129
7.2.2 C++程序的常用优化方法 132
7.2.3 Java程序性能的优化方法 137
小结 148
习题7 148
第8章 开发实例解析 149
8.1 实例描述 149
8.2 售货机系统的设计和实现 149
8.2.1 各式饮料的实现 149
8.2.2 工厂模式的引入 155
8.2.3 用户购买的请求与反馈 157
8.2.4 对非法请求的处理 163
8.3 开发环境的配置及效果 165
参考文献 168