《工程应用软件开发技术》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:蔡娥,许跃敏编著
  • 出 版 社:杭州:浙江大学出版社
  • 出版年份:2008
  • ISBN:9787308062053
  • 页数:304 页
图书介绍:本书主要面向工科类学生从事工程应用软件方面开发工作所应具备的计算机技术知识,包括数据结构,C,C++,数据库,软件开发技术(结构化开发技术,面向对象开发技术),并附许多工程应用实例。

第1章 绪论 1

1.1 引言 2

1.2 软件开发的基本概念 3

1.2.1 信息与数据 3

1.2.2 软件 3

1.2.3 软件的特点 5

1.2.4 软件工程 6

1.2.5 软件开发必备的计算机基础 6

1.3 软件开发及发展史 7

1.3.1 过程化技术阶段 8

1.3.2 过程结构化技术阶段 9

1.3.3 数据结构化技术阶段 9

1.3.4 面向对象技术阶段 10

1.3.5 研究软件开发技术的目的 11

1.4 软件开发编程语言 12

1.4.1 低级语言 12

1.4.2 中级语言 12

1.4.3 高级语言 13

第2章 软件工程 17

2.1 软件工程的基本概念 18

2.1.1 软件危机 18

2.1.2 软件工程 19

2.1.3 软件质量 19

2.1.4 软件的生命周期 20

2.1.5 软件开发模型 20

2.1.6 软件管理与软件过程改进 21

2.2 可行性分析与计划 23

2.2.1 软件系统定义 23

2.2.2 可行性分析 23

2.2.3 软件计划 24

2.3 需求分析 24

2.3.1 需求分析的重要性 24

2.3.2 需求分析的任务 26

2.3.3 需求分析方法 27

2.3.4 需求分析产生的文档 29

2.3.5 需求分析工作心得 30

2.4 交互设计 30

2.5 概要设计 31

2.6 详细设计 32

2.7 软件编程 33

2.8 软件测试 35

2.8.1 软件测试的目的 36

2.8.2 测试过程 37

2.8.3 软件测试经验谈 38

2.9 软件维护 38

2.10 软件文档 40

2.10.1 文档的重要性 41

2.10.2 文档的种类和内容 41

2.10.3 文档的质量要求 42

2.10.4 文档的管理 42

参考文献 43

思考题 43

第3章 数据结构基础 44

3.1 数据结构基本概念 45

3.1.1 数据结构 45

3.1.2 数据模型 47

3.1.3 数据结构分类 48

3.1.4 数据结构表达语言 50

3.2 线性结构 50

3.2.1 线性结构定义 50

3.2.2 用顺序结构实现线性结构 51

3.2.3 用链式结构实现线性表 55

3.3 线性结构应用 61

3.3.1 一元多项式 61

3.3.2 栈 61

3.3.3 队列 64

3.3.4 数组 67

3.3.5 特殊矩阵的存储压缩 67

3.4 树结构与二叉树 69

3.4.1 树的定义 70

3.4.2 树的实现 71

3.4.3 树的遍历 76

3.4.4 二叉树 77

3.5 图结构 78

3.5.1 图的定义 79

3.5.2 图的实现 80

3.5.3 图的遍历 83

3.5.4 图的应用 86

3.6 数据结构心得 87

参考文献 88

思考题 88

第4章 C语言深入讨论 91

4.1 C语言与编程语言 92

4.2 数据类型 92

4.3 变量 95

4.3.1 深入理解变量 95

4.3.2 变量的生命周期和变量名的作用范围 96

4.3.3 动态变量与非动态变量 97

4.4 指针与指针变量 100

4.4.1 理解指针与指针变量 100

4.4.2 指针变量指向动态变量空间 102

4.4.3 多重指针 103

4.4.4 指针的运算 104

4.4.5 指针的作用 105

4.4.6 指针与引用 105

4.4.7 指针与内存错误 107

4.5 位运算的应用 113

4.5.1 是与非的状态标志 113

4.5.2 标识属性的多种状态 114

4.6 复合数据类型——数据结构 116

4.6.1 数组 116

4.6.2 结构体 119

4.6.3 联合 121

4.6.4 枚举 122

4.6.5 类型定义 122

4.7 常量 123

4.8 表达式与基本语句 126

4.9 函数 128

4.9.1 理解函数 128

4.9.2 函数的形参与实参结合 131

4.9.3 指向函数的指针 132

4.9.4 函数设计准则 133

4.9.5 良好的编程习惯 133

4.10 文件结构 140

4.10.1 头文件的结构 140

4.10.2 定义文件的结构 141

4.10.3 目录结构 142

参考文献 142

思考题 142

第5章 面向对象技术 144

5.1 引言 145

5.2 面向对象基本概念 145

5.2.1 理解对象 145

5.2.2 理解面向对象 147

5.2.3 理解类 148

5.2.4 抽象对象与抽象类 149

5.2.5 面向对象技术 150

5.2.6 面向对象技术的目标 150

5.3 结构化技术与面向对象技术比较 151

5.4 面向对象的三个特性 155

5.4.1 封装性 155

5.4.2 继承性 156

5.4.3 多态性 157

5.4.4 面向对象技术的优越性 158

参考文献 159

思考题 160

第6章 C++语言 161

6.1 C++语言与C语言 162

6.1.1 C++简史 162

6.1.2 C语言与C++语言的比较 162

6.2 类 163

6.2.1 类的声明 164

6.2.2 类的定义 164

6.2.3 成员隐蔽性 167

6.2.4 类成员变量 167

6.2.5 类成员函数 168

6.2.6 类实例对象的创建与取消 179

6.2.7 函数原型认定 181

6.2.8 对象的成员引用 183

6.2.9 类小结 184

6.3 层次性与继承性的实现 185

6.3.1 继承性定义 185

6.3.2 派生类对象的内存分配 186

6.3.3 派生类对象的指针引用 187

6.3.4 构造函数和析构函数的继承性问题 188

6.4 动态性与多态性的实现 188

6.4.1 虚函数 189

6.4.2 抽象类与实例类 191

6.4.3 动态绑定(动态联编) 192

6.4.4 多态性 192

6.4.5 虚函数、多态性的作用 193

6.4.6 重载、覆盖与隐藏的比较 193

6.5 其他技术 196

6.5.1 消息传递 196

6.5.2 运算符重载 196

6.6 面向对象的C++语言开发简述 199

6.6.1 面向对象的C++数据结构设计 199

6.6.2 面向抽象对象的软件系统开发 200

参考文献 202

思考题 202

第7章 数据库技术基础 203

7.1 数据库概述 204

7.1.1 为什么要学习数据库 204

7.1.2 数据管理技术的发展历程 205

7.1.3 数据库的基本概念 206

7.1.4 数据库的体系结构 209

7.2 数据模型及分类 211

7.2.1 数据模型的概念 211

7.2.2 数据模型的层次性 211

7.2.3 实体联系模型 213

7.2.4 数据库分类 217

7.3 关系模型与关系数据库理论 219

7.3.1 关系模型 219

7.3.2 从E-R图导出关系模型 223

7.3.3 关系数据库理论 224

7.4 关系数据库SQL语言 225

7.4.1 SQL语言概述 225

7.4.2 SQL语言的功能 225

7.4.3 视图 232

7.4.4 嵌入式SQL 232

7.4.5 SQL在数据库设计中的应用 233

7.5 数据库管理系统 234

7.5.1 数据库管理系统的主要功能 234

7.5.2 数据库管理系统的工作原理 234

7.5.3 数据库管理系统的组成 235

7.5.4 数据库管理系统的安全措施和完整性约束 239

7.6 数据库系统设计 239

7.7 工程数据库 242

7.8 分布式数据库 243

7.9 常用的数据库管理系统与应用软件开发语言简介 244

7.9.1 常用的数据库管理系统 244

7.9.2 常用的应用软件开发环境 245

7.10 数据库小结 246

思考题 247

参考文献 247

第8章 工程应用软件开发实例 248

8.1 工程计算系统实训——锅炉热力计算系统 249

8.1.1 问题的提出 249

8.1.2 需求分析 251

8.1.3 系统设计 252

8.1.4 系统实现 254

8.1.5 热力计算系统小结 257

8.2 通用性与专用性的统一——部件设计 258

8.2.1 问题的提出 258

8.2.2 需求分析 258

8.2.3 系统设计 259

8.2.4 系统实现 261

8.2.5 部件设计系统小结 264

8.3 数据库系统——石化企业设备管理系统 264

8.3.1 问题的提出 264

8.3.2 需求分析 265

8.3.3 系统设计 270

8.3.4 系统实现 274

8.3.5 设备管理系统小结 278

8.4 小结 278

参考文献 279

思考题 279

附录1 软件分类示例 280

附录2 锅炉热力计算系统类设计 284