第一篇 计算机软件总论 2
第1章 现代计算机系统介绍 2
1.1 计算机的概念 2
1.2 计算机硬件 3
1.3 计算机软件 6
1.3.1 计算机软件的基本概念 6
1.3.2 计算机概念的第一次变化 6
1.3.3 用户所见到的计算机系统 7
1.4 计算机网络 8
1.4.1 计算机网络的基本概念 8
1.4.2 计算机概念的又一次改变 8
1.4.3 用户所见到的现代计算机系统 8
1.5 计算机概念发展变化的历史 9
小结 9
习题一 10
第2章 计算机软件概述 11
2.1 计算机软件的基本概念 11
2.1.1 什么是计算机软件 11
2.1.2 计算机软件的地位与作用 13
2.1.3 软件的特性 13
2.2 软件发展的4个阶段 14
2.3 软件的学科内容组成 15
小结 17
习题二 17
第二篇 计算机软件基础理论 20
第3章 算法理论 20
3.1 算法的基本概念 20
3.2 算法的基本特征 21
3.3 算法的基本要素 22
3.4 算法描述 22
3.4.1 形式化描述 22
3.4.2 半形式化描述 23
3.4.3 非形式化描述 24
3.5 算法设计 25
3.6 算法评价 32
3.7 一个算法的完整表示 35
3.8 几点说明 36
小结 36
习题三 37
实验一 算法 38
第4章 数据基础 39
4.1 数据的基本概念 39
4.1.1 数据定义 39
4.1.2 数据组成 40
4.1.3 数据特性 43
4.2 数据元素与数据单元 43
4.2.1 数据元素 44
4.2.2 数据对象 45
4.2.3 基本数据结构 46
4.2.4 数据单元 47
4.2.5 复合数据单元 48
4.3 广义的数据单元 48
4.3.1 数据的使用——数据操纵 48
4.3.2 数据约束 49
4.3.3 数据的完整表示——广义的数据单元 49
4.4 数据组织 51
4.4.1 数据模型 51
4.4.2 数据组织分类 51
4.4.3 四种数据组织的使用 53
4.4.4 数据组织发展简史及展望 54
小结 56
习题四 56
第5章 数据结构及其应用 58
5.1 线性结构 58
5.1.1 线性表 59
5.1.2 栈 60
5.1.3 队列 62
5.1.4 数组 63
5.2 树结构 64
5.2.1 树的结构 64
5.2.2 树的操作 66
5.3 图结构 69
5.3.1 图结构介绍 69
5.3.2 图操作 70
5.4 数据结构作为一种数据组织 72
5.5 数据结构应用 72
5.5.1 数据结构的组建 72
5.5.2 基于数据结构的算法 73
5.5.3 问题求解过程的7个步骤 73
小结 79
习题五 80
实验二 数据结构 81
第三篇 计算机软件系统 87
第6章 操作系统——系统软件之一 87
6.1 操作系统作用 87
6.2 操作系统的功能 88
6.3 操作系统的结构 89
6.4 操作系统的安装 90
6.5 进程管理 90
6.6 资源管理 92
6.6.1 CPU管理 92
6.6.2 存储管理 93
6.6.3 设备管理 94
6.6.4 文件管理 94
6.7 用户服务 96
6.8 基础接口——中断管理 97
6.9 计算机系统总接口 99
6.10 常用操作系统 99
小结 100
习题六 102
第7章 程序设计语言及语言处理系统——系统软件之二 103
7.1 程序与程序设计语言 103
7.2 程序设计语言介绍 104
7.2.1 低级语言 104
7.2.2 高级语言 105
7.2.3 程序设计语言的发展 105
7.3 程序设计语言的基本组成 106
7.4 语言处理系统 108
7.4.1 语言处理系统概述 108
7.4.2 汇编语言处理系统 109
7.4.3 高级语言处理系统之解释程序 109
7.4.4 高级语言处理系统之编译程序 110
7.5 程序设计 113
小结 114
习题七 115
第8章 数据库系统——系统软件之三 116
8.1 数据库系统概述 116
8.1.1 数据库系统特色与数据库系统基本面貌 116
8.1.2 数据库系统组成 117
8.1.3 数据库应用系统 118
8.2 数据模型 120
8.2.1 概念模型——E-R模型 120
8.2.2 逻辑模型——关系模型 122
8.2.3 物理模型 127
8.3 数据库系统与关系数据库系统 127
8.3.1 数据库与关系数据库 127
8.3.2 数据库管理系统与关系数据库管理系统 128
8.4 主流数据库产品介绍 147
8.4.1 大型数据库产品Oracle 147
8.4.2 小型数据库产品SQL Server 147
8.4.3 桌面数据库产品Access 148
小结 148
习题八 149
实验三 数据库 150
第9章 支撑软件与应用软件系统 151
9.1 支撑软件系统 151
9.2 应用软件系统 153
9.2.1 概述 153
9.2.2 应用软件组成 153
9.2.3 典型应用软件介绍 154
小结 160
习题九 160
第10章 计算机网络软件与互联网软件 162
10.1 网络软件的分布式结构 162
10.2 网络软件的分层构造 163
10.3 计算机网络层 164
10.3.1 计算机网络层中的计算机 164
10.3.2 计算机网络层中的数据通信网 164
10.3.3 计算机网络协议 165
10.4 网络中的系统软件 166
10.4.1 网络操作系统 166
10.4.2 网络数据库管理系统 166
10.4.3 网络程序设计语言 167
10.4.4 网络专用开发工具 168
10.5 网络中的支撑软件 169
10.6 网络应用软件 169
10.7 两种重要的网络软件之一——中间件 170
10.7.1 J2EE 170
10.7.2 .NET 172
10.8 两个重要的网络软件之二——Web组成与开发 173
10.8.1 Web组成 173
10.8.2 Web使用 174
10.8.3 Web开发及其开发工具 175
10.8.4 Web使用的工作流程 191
10.8.5 Web数据组织 192
小结 193
习题十 194
实验四 Web开发 195
第四篇 计算机软件开发 198
第11章 软件工程 198
11.1 软件工程概述 198
11.1.1 软件危机与软件工程 198
11.1.2 软件工程的基本概念 199
11.1.3 软件开发的方法 199
11.1.4 软件开发过程 202
11.1.5 软件开发过程中的生存周期模型 203
11.1.6 软件开发工具 207
11.1.7 软件产品文档与标准 208
11.1.8 软件质量保证 208
11.1.9 软件项目管理 208
11.2 结构化开发方法 209
11.2.1 结构化开发方法介绍 209
11.2.2 结构化分析方法 210
11.2.3 系统设计 214
11.2.4 系统编码 222
11.2.5 测试 224
11.2.6 运行与维护 228
11.3 软件工程的标准化 229
11.3.1 软件工程标准化意义 229
11.3.2 软件工程标准化组织与标准 229
11.3.3 我国的软件工程标准 230
11.4 软件工程中的文档 231
11.4.1 文档的作用 231
11.4.2 文档的分类 232
11.4.3 常用的软件文档 232
11.4.4 文档编制的质量要求 233
11.5 软件项目管理 234
11.5.1 软件项目成本控制 235
11.5.2 项目进度安排 235
11.5.3 项目管理内容 236
11.5.4 软件配置管理 237
11.6 软件质量保证 238
11.6.1 软件质量的概念 238
11.6.2 软件质量保证手段 238
小结 240
习题十一 242
第12章 应用系统开发 243
12.1 应用系统开发原理 243
12.1.1 应用系统组成 243
12.1.2 应用系统开发步骤 244
12.2 应用系统组成 245
12.2.1 应用系统的基础平台 245
12.2.2 应用系统的数据资源层 246
12.2.3 应用系统的业务逻辑层 248
12.2.4 应用系统的应用表现层 248
12.2.5 应用系统的用户层 248
12.2.6 典型的应用系统组成介绍 248
12.3 应用系统开发实例——电子点菜系统 250
12.3.1 电子点菜系统简介 250
12.3.2 需求调查 250
12.3.3 需求分析 251
12.3.4 系统设计 252
12.3.5 系统平台 254
12.3.6 系统详细设计 255
12.3.7 系统结构图 256
12.3.8 系统实现 256
小结 257
习题十二 258
实验五 应用系统开发 258
参考文献 259