《高质量程序设计指南 C++/C语言》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:林锐等编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2002
  • ISBN:7505362186
  • 页数:233 页
图书介绍:

第1章 高质量软件开发之道 1

1.1 软件质量基本概念 2

1.1.1 如何理解软件的质量 2

1.1.2 提高软件质量的基本方法 4

1.1.3 “零缺陷”理念 5

1.2 细说软件质量属性 6

1.2.1 正确性 6

1.2.2 健壮能 6

1.2.3 可靠性 7

1.2.4 性能 7

1.2.6 清晰性 8

1.2.5 易用性 8

1.2.7 安全性 9

1.2.8 可扩展性 9

1.2.9 兼容性 10

1.2.10 可移植性 10

1.3 人们关注的不仅是质量 10

1.3.1 质量、生产率和成本之间的关系 10

1.3.2 软件过程改进基本概念 13

1.4 高质量软件开发的基本方法 15

1.4.1 建立软件过程规范 15

1.4.2 复用 18

1.4.4 优化与折衷 20

1.4.3 分而治之 20

1.4.5 技术评审 21

1.4.6 测试 24

1.4.7 质量保证 26

1.4.8 改错 27

1.5 关于软件开发的一些起常识和思考 29

1.5.1 有最好的编程语言吧 29

1.5.3 编程时应该多使用技巧吗 30

1.5.4 换更快的计算机还是换更快的算法 30

1.5.2 编程是一门艺术吗 30

1.5.5 错误是否应该分等级 31

1.5.6 一些错误的观念 31

1.6 小结 32

第2章 做好程序员 33

2.1 漫谈程序员 34

2.2 职业道德 35

2.2.1 上班时间不干与工作无关的事情 36

2.2.2 不损害集体利益 37

2.2.3 不干危害社会的事情 37

2.3 工作态度 38

2.3.1 认真负责 38

2.3.2 服务意识 39

2.4 高效率地工作 40

2.4.1 合理安排一天的时间 40

2.4.2 减少路上花费的时间 42

2.4.3 开会 43

2.4.5 随时记录 44

2.5 程序员佩服什么样的项目经理 44

2.4.4 处理电子邮件 45

2.5.1 丰富的产品开发经验和比较高的技术水平 45

2.5.2 懂得管理事和管人 45

2.5.3 较好的人格魅力 46

2.6 将程序员培养成为经理 47

2.7 程序员升为项目经理后是否还要编程 48

2.8 学无止境 52

2.8.1 不断学习新技术 52

2.8.2 提高综合才能 53

2.8.3 向错误与失败学习 55

2.9 小结 57

第3章 编程语言发展简史 59

3.1 编程语言大事记 60

3.2 Ada的故事 64

3.3 C++的演化 64

3.4 Borland 与Microsoft之争 66

3.5 Java 阵营与Microsoft 的较量 67

3.6 小结 70

第4章 C++面向对象程序设计方法概述 71

4.1 漫谈面向对象 72

4.2 信息隐藏与类的填充装特性 73

4.3 类的继承特性 74

4.4 类的组合特性 76

4.5 动态的特性 78

4.5.1 虚函数 78

4.5.2 抽象基类 79

4.5.3 动态联编 80

4.5.4 多态性 81

4.6 小结 82

第5章 文件结构 83

5.1 版权和版本的声明 84

5.2 头文件的结构 84

5.3 定义文件的结构 86

5.4 头文件的作用 86

5.5 目录结构 87

第6章 程序的版式 89

6.1 空行 90

6.2 代码行 90

6.3 代码行内的空格 92

6.4 对齐 93

6.5 长行拆分 94

6.6 修饰符的位置 95

6.7 注释 95

6.8 类的版式 96

第7章 命名规则 99

7.1 共性规则 100

7.2 简单的Windows应用程序命名规则 101

第8章 表达式与基本语句 103

8.1 运算符的优先级 104

8.3.1 布尔变量与零值比较 105

8.3 if语句 105

8.2 复合表达式 105

8.3.2 整型变量与零值比较 106

8.3.3 浮点变量与零值比较 106

8.3.4 指针变量与零值比较 106

8.3.5 对if语句的补充说明 107

8.4 循环语句的效率 107

8.5 for语句的循环控制变量 109

8.6 switch语句 109

8.7 goto语句 110

第9章 常量 113

9.3 常量定义的规则 114

9.2 cont 与#sifine的比较 114

9.1 为什么需要常量 114

9.4 类中的常量 115

第10章 函数设计 117

10.1 参数的规则 118

10.2 返回值的规则 119

10.3 函数内部实现的规则 122

10.4 其他建议 123

10.5 使用断言 123

10.6 引用与指针的比较 125

第11章 内存管理 129

11.2 常见的内存错误及其对策 130

11.1 内存分配方式 130

11.3 指针与数组的对比 131

11.3.1 修改内容 132

11.3.2 内容复制与比较 132

11.3.3 计算机内存容量 133

11.4 指针参数是如何传递内存的 134

11.5 free 与delete把指针怎么啦 137

11.6 动态内存会被自动释放吗 137

11.7 杜绝“野指针” 138

11.8 有了malloc/free 为什么还要new/delete 139

11.9 内存耗尽怎么办 141

11.10 malloc/free的使用要点 143

11.11 mew/delete的使用要点 144

第12章 C++函数的高级特性 147

12.1 函数重载的概念 148

12.1.1 重载的起源 148

12.1.2 重载是如何实现的 148

12.1.3 当心隐式类型转换导致重载函数产生二义性 150

12.2 成员函数的重载、覆盖与隐藏 151

12.2.1 重载与覆盖 151

12.2.2 令人迷惑的隐藏规则 152

12.2.3 摆脱隐藏 154

12.3 参数的默认值 155

12.4 运算符重载 157

12.4.1 概念 157

12.4.2 不能被重载的运算符 158

12.5 函数内联 158

12.5.1 用内联取代宏代码 158

12.5.2 内联函数的编程风格 160

12.5.3 慎有内联 161

第13章 类的构造函数、析构与赋值函数 163

13.1 构造函数与折构函数的起源 165

13.2 构造函数的初始化表/ 165

13.4 示例:类String 的构造函数与析构函数 168

13.3 构造和析构的次序 168

13.5 不要轻视拷贝构造函数与赋值函数 169

13.6 示例:类String的拷贝构造函数与赋值函数 170

13.7 用偷懒的办法处理拷贝构造函数与赋值函数 172

13.8 如何在派生类中实现类的基本函数 172

第14章 C++ STL应用 175

14.1 STL介绍 176

14.2 容器类 176

14.3 迭代器 181

14.4 算法 183

第15章 其它编程经验 185

15.1.1 用const修饰函数的参数 186

15.1 使用const 提高函数的健壮性 186

15.1.2 用const修饰函数的返回值 187

15.1.3 const成员函数 188

15.2提高程序的效率 189

15.3 一些有益的建议 189

附录 A:C++/C 试题 191

附录 B:C++/C 试题的答案与评分标准 195

附录 C:C++/C 代码检查表 201

附录 D:大学十年 207

附录E:《大学十年》后记 231

参考文献 233