1.1 程序设计方法学的产生 1
第一章 程序设计方法学简介 1
1.2 程序设计方法学的基本内容 4
第二章 程序设计方法学的基本理论 8
2.1 结构化定理 8
2.1.1 结构化程序 8
2.1.2 结构化定理 12
2.2 程序正确性证明 15
2.2.1 基本概念 15
2.2.2 部分正确性证明方法 16
2.2.3 终止性证明方法 21
2.3.1 基本概念 23
2.3 抽象数据类型 23
2.3.2 抽象数据类型的代数规范 27
2.4 程序设计的形式化方法 33
2.4.1 形式化方法概述 33
2.4.2 几种主要的形式化方法 34
2.4.3 形式化方法的应用——形式推导技术 40
第三章 结构化程序设计方法学 45
3.1 结构化程序设计概述 45
3.2 结构化程序设计 48
3.2.1 逐步求精 48
3.2.2 不变式程序设计 52
4.1 面向对象程序概述 55
4.1.1 面向对象技术的产生与发展 55
第四章 面向对象程序设计方法学 55
4.1.2 面向对象抽象的原理 58
4.1.3 面向对象计算的模型 58
4.2 可复用面向对象程序设计的基本原则 60
4.2.1 开闭原则(OCP) 60
4.2.2 里氏代换原则(LSP) 61
4.2.3 依赖倒转原则(DIP) 62
4.2.4 迪米特法则(LOD) 62
4.2.5 单责任原则(SRP) 63
4.3 面向对象程序设计方法学的基本内容 63
4.3.1 面向对象的抽象 63
4.3.2 面向对象程序设计的基本过程 66
4.3.3 应用框架 70
4.3.4 范型编程 74
4.4 设计模式 77
4.4.1 基本概念 77
4.4.2 创建型模式 78
4.4.3 结构型模式 97
4.4.4 行为型模式 108
4.5 面向对象程序设计实例 120
第五章 程序设计的优化方法 127
5.1 程序设计优化方法概述 127
5.2 设计级优化 128
5.3 语言级优化 131
5.4 指令级优化 134
参考文献 136