描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787113169725丛书名: 高等学校计算机类课程应用型人才培养规划教材
编辑推荐
本教材按学科体系介绍计算机软件,新旧兼蓄,吐故纳新,全面介绍,重点突出,理论与应用兼顾,原理与操作并重。适用于“计算机软件”课程,该课程较新,现在正在全国进行广泛开设,因此销售前景看好。
内容简介
《计算机软件基础》的内容组织成4篇12章5个实验,其具体安排为:(1)篇计算机软件总论,共有两章:计算机系统介绍,计算机软件概述。(2)第二篇计算机软件基础理论,共有三章:算法理论,数据理论之一——数据的基本概念,数据理论之二——数据结构。两个实验:算法实验,数据结构实验。(3)第三篇计算机软件系统篇,共有5章:操作系统,计算机语言与计算机语言处理系统,数据库管理系统,支撑软件系统及应用软件系统,计算机网络软件系统。兩个实验:数据库实验,Web开发实验。(4)第四篇计算机软件开发篇,共分两章:软件工程,计算机应用系统开发。一个实验:应用软件开发实验。
目 录
篇 计算机软件总论
第1章 现代计算机系统介绍
1.1 计算机的概念
1.2 计算机硬件
1.3 计算机软件
1.3.1 计算机软件的基本概念
1.3.2 计算机概念的次变化
1.3.3 用户所见到的计算机系统
1.4 计算机网络
1.4.1 计算机网络的基本概念
1.4.2 计算机概念的又一次改变
1.4.3 用户所见到的现代计算机系统
1.5 计算机概念发展变化的历史
小结
习题一
第2章 计算机软件概述
2.1 计算机软件的基本概念
2.1.1 什么是计算机软件
2.1.2 计算机软件的地位与作用
2.1.3 软件的特性
2.2 软件发展的4个阶段
2.3 软件的学科内容组成
小结
习题二
第二篇 计算机软件基础理论
第3章 算法理论
3.1 算法的基本概念
3.2 算法的基本特征
3.3 算法的基本要素
3.4 算法描述
3.4.1 形式化描述
3.4.2 半形式化描述
3.4.3 非形式化描述
*3.5 算法设计
3.6 算法评价
3.7 一个算法的完整表示
3.8 几点说明
小结
习题三
实验一 算法
*第4章 数据基础
4.1 数据的基本概念
4.1.1 数据定义
4.1.2 数据组成
4.1.3 数据特性
4.2 数据元素与数据单元
4.2.1 数据元素
4.2.2 数据对象
4.2.3 基本数据结构
4.2.4 数据单元
4.2.5 复合数据单元
4.3 广义的数据单元
4.3.1 数据的使用——数据操纵
4.3.2 数据约束
4.3.3 数据的完整表示——广义的数据单元
4.4 数据组织
4.4.1 数据模型
4.4.2 数据组织分类
4.4.3 四种数据组织的使用
4.4.4 数据组织发展简史及展望
小结
习题四
第5章 数据结构及其应用
5.1 线性结构
5.1.1 线性表
5.1.2 栈
5.1.3 队列
5.1.4 数组
5.2 树结构
5.2.1 树的结构
5.2.2 树的操作
5.3 图结构
5.3.1 图结构介绍
5.3.2 图操作
5.4 数据结构作为一种数据组织
5.5 数据结构应用
5.5.1 数据结构的组建
5.5.2 基于数据结构的算法
5.5.3 问题求解过程的7个步骤
小结
习题五
实验二 数据结构
第三篇 计算机软件系统
第6章 操作系统——系统软件之一
6.1 操作系统作用
6.2 操作系统的功能
6.3 操作系统的结构
6.4 操作系统的安装
6.5 进程管理
6.6 资源管理
6.6.1 CPU管理
6.6.2 存储管理
6.6.3 设备管理
6.6.4 文件管理
6.7 用户服务
6.8 基础接口——中断管理
6.9 计算机系统总接口
6.10 常用操作系统
小结
习题六
第7章 程序设计语言及语言处理系统——系统软件之二
7.1 程序与程序设计语言
7.2 程序设计语言介绍
7.2.1 低级语言
7.2.2 高级语言
7.2.3 程序设计语言的发展
7.3 程序设计语言的基本组成
7.4 语言处理系统
7.4.1 语言处理系统概述
7.4.2 汇编语言处理系统
7.4.3 高级语言处理系统之解释程序
7.4.4 高级语言处理系统之编译程序
7.5 程序设计
小结
习题七
第8章 数据库系统——系统软件之三
8.1 数据库系统概述
8.1.1 数据库系统特色与数据库系统基本面貌
8.1.2 数据库系统组成
8.1.3 数据库应用系统
8.2 数据模型
8.2.1 概念模型——E-R模型
8.2.2 逻辑模型——关系模型
8.2.3 物理模型
8.3 数据库系统与关系数据库系统
8.3.1 数据库与关系数据库
8.3.2 数据库管理系统与关系数据库管理系统
*8.4 主流数据库产品介绍
8.4.1 大型数据库产品Oracle
8.4.2 小型数据库产品SQL Server
8.4.3 桌面数据库产品Access
小结
习题八
实验三 数据库
第9章 支撑软件与应用软件系统
9.1 支撑软件系统
9.2 应用软件系统
9.2.1 概述
9.2.2 应用软件组成
9.2.3 典型应用软件介绍
小结
习题九
第10章 计算机网络软件与互联网软件
10.1 网络软件的分布式结构
10.2 网络软件的分层构造
10.3 计算机网络层
10.3.1 计算机网络层中的计算机
10.3.2 计算机网络层中的数据通信网
10.3.3 计算机网络协议
10.4 网络中的系统软件
10.4.1 网络操作系统
10.4.2 网络数据库管理系统
10.4.3 网络程序设计语言
10.4.4 网络专用开发工具
10.5 网络中的支撑软件
10.6 网络应用软件
*10.7 两种重要的网络软件之一——中间件
10.7.1 J2EE
10.7.2 .NET
10.8 两个重要的网络软件之二——Web组成与开发
10.8.1 Web组成
10.8.2 Web使用
10.8.3 Web开发及其开发工具
10.8.4 Web使用的工作流程
10.8.5 Web数据组织
小结
习题十
实验四 Web开发
第四篇 计算机软件开发
第11章 软件工程
11.1 软件工程概述
11.1.1 软件危机与软件工程
11.1.2 软件工程的基本概念
11.1.3 软件开发的方法
11.1.4 软件开发过程
11.1.5 软件开发过程中的生存周期模型
11.1.6 软件开发工具
11.1.7 软件产品文档与标准
11.1.8 软件质量保证
11.1.9 软件项目管理
11.2 结构化开发方法
11.2.1 结构化开发方法介绍
11.2.2 结构化分析方法
11.2.3 系统设计
11.2.4 系统编码
11.2.5 测试
11.2.6 运行与维护
11.3 软件工程的标准化
11.3.1 软件工程标准化意义
11.3.2 软件工程标准化组织与标准
11.3.3 我国的软件工程标准
11.4 软件工程中的文档
11.4.1 文档的作用
11.4.2 文档的分类
11.4.3 常用的软件文档
11.4.4 文档编制的质量要求
11.5 软件项目管理
11.5.1 软件项目成本控制
11.5.2 项目进度安排
11.5.3 项目管理内容
11.5.4 软件配置管理
11.6 软件质量保证
11.6.1 软件质量的概念
11.6.2 软件质量保证手段
小结
习题十一
*第12章 应用系统开发
12.1 应用系统开发原理
12.1.1 应用系统组成
12.1.2 应用系统开发步骤
12.2 应用系统组成
12.2.1 应用系统的基础平台
12.2.2 应用系统的数据资源层
12.2.3 应用系统的业务逻辑层
12.2.4 应用系统的应用表现层
12.2.5 应用系统的用户层
12.2.6 典型的应用系统组成介绍
*12.3 应用系统开发实例——电子点菜系统
12.3.1 电子点菜系统简介
12.3.2 需求调查
12.3.3 需求分析
12.3.4 系统设计
12.3.5 系统平台
12.3.6 系统详细设计
12.3.7 系统结构图
12.3.8 系统实现
小结
习题十二
实验五 应用系统开发
参考文献
第1章 现代计算机系统介绍
1.1 计算机的概念
1.2 计算机硬件
1.3 计算机软件
1.3.1 计算机软件的基本概念
1.3.2 计算机概念的次变化
1.3.3 用户所见到的计算机系统
1.4 计算机网络
1.4.1 计算机网络的基本概念
1.4.2 计算机概念的又一次改变
1.4.3 用户所见到的现代计算机系统
1.5 计算机概念发展变化的历史
小结
习题一
第2章 计算机软件概述
2.1 计算机软件的基本概念
2.1.1 什么是计算机软件
2.1.2 计算机软件的地位与作用
2.1.3 软件的特性
2.2 软件发展的4个阶段
2.3 软件的学科内容组成
小结
习题二
第二篇 计算机软件基础理论
第3章 算法理论
3.1 算法的基本概念
3.2 算法的基本特征
3.3 算法的基本要素
3.4 算法描述
3.4.1 形式化描述
3.4.2 半形式化描述
3.4.3 非形式化描述
*3.5 算法设计
3.6 算法评价
3.7 一个算法的完整表示
3.8 几点说明
小结
习题三
实验一 算法
*第4章 数据基础
4.1 数据的基本概念
4.1.1 数据定义
4.1.2 数据组成
4.1.3 数据特性
4.2 数据元素与数据单元
4.2.1 数据元素
4.2.2 数据对象
4.2.3 基本数据结构
4.2.4 数据单元
4.2.5 复合数据单元
4.3 广义的数据单元
4.3.1 数据的使用——数据操纵
4.3.2 数据约束
4.3.3 数据的完整表示——广义的数据单元
4.4 数据组织
4.4.1 数据模型
4.4.2 数据组织分类
4.4.3 四种数据组织的使用
4.4.4 数据组织发展简史及展望
小结
习题四
第5章 数据结构及其应用
5.1 线性结构
5.1.1 线性表
5.1.2 栈
5.1.3 队列
5.1.4 数组
5.2 树结构
5.2.1 树的结构
5.2.2 树的操作
5.3 图结构
5.3.1 图结构介绍
5.3.2 图操作
5.4 数据结构作为一种数据组织
5.5 数据结构应用
5.5.1 数据结构的组建
5.5.2 基于数据结构的算法
5.5.3 问题求解过程的7个步骤
小结
习题五
实验二 数据结构
第三篇 计算机软件系统
第6章 操作系统——系统软件之一
6.1 操作系统作用
6.2 操作系统的功能
6.3 操作系统的结构
6.4 操作系统的安装
6.5 进程管理
6.6 资源管理
6.6.1 CPU管理
6.6.2 存储管理
6.6.3 设备管理
6.6.4 文件管理
6.7 用户服务
6.8 基础接口——中断管理
6.9 计算机系统总接口
6.10 常用操作系统
小结
习题六
第7章 程序设计语言及语言处理系统——系统软件之二
7.1 程序与程序设计语言
7.2 程序设计语言介绍
7.2.1 低级语言
7.2.2 高级语言
7.2.3 程序设计语言的发展
7.3 程序设计语言的基本组成
7.4 语言处理系统
7.4.1 语言处理系统概述
7.4.2 汇编语言处理系统
7.4.3 高级语言处理系统之解释程序
7.4.4 高级语言处理系统之编译程序
7.5 程序设计
小结
习题七
第8章 数据库系统——系统软件之三
8.1 数据库系统概述
8.1.1 数据库系统特色与数据库系统基本面貌
8.1.2 数据库系统组成
8.1.3 数据库应用系统
8.2 数据模型
8.2.1 概念模型——E-R模型
8.2.2 逻辑模型——关系模型
8.2.3 物理模型
8.3 数据库系统与关系数据库系统
8.3.1 数据库与关系数据库
8.3.2 数据库管理系统与关系数据库管理系统
*8.4 主流数据库产品介绍
8.4.1 大型数据库产品Oracle
8.4.2 小型数据库产品SQL Server
8.4.3 桌面数据库产品Access
小结
习题八
实验三 数据库
第9章 支撑软件与应用软件系统
9.1 支撑软件系统
9.2 应用软件系统
9.2.1 概述
9.2.2 应用软件组成
9.2.3 典型应用软件介绍
小结
习题九
第10章 计算机网络软件与互联网软件
10.1 网络软件的分布式结构
10.2 网络软件的分层构造
10.3 计算机网络层
10.3.1 计算机网络层中的计算机
10.3.2 计算机网络层中的数据通信网
10.3.3 计算机网络协议
10.4 网络中的系统软件
10.4.1 网络操作系统
10.4.2 网络数据库管理系统
10.4.3 网络程序设计语言
10.4.4 网络专用开发工具
10.5 网络中的支撑软件
10.6 网络应用软件
*10.7 两种重要的网络软件之一——中间件
10.7.1 J2EE
10.7.2 .NET
10.8 两个重要的网络软件之二——Web组成与开发
10.8.1 Web组成
10.8.2 Web使用
10.8.3 Web开发及其开发工具
10.8.4 Web使用的工作流程
10.8.5 Web数据组织
小结
习题十
实验四 Web开发
第四篇 计算机软件开发
第11章 软件工程
11.1 软件工程概述
11.1.1 软件危机与软件工程
11.1.2 软件工程的基本概念
11.1.3 软件开发的方法
11.1.4 软件开发过程
11.1.5 软件开发过程中的生存周期模型
11.1.6 软件开发工具
11.1.7 软件产品文档与标准
11.1.8 软件质量保证
11.1.9 软件项目管理
11.2 结构化开发方法
11.2.1 结构化开发方法介绍
11.2.2 结构化分析方法
11.2.3 系统设计
11.2.4 系统编码
11.2.5 测试
11.2.6 运行与维护
11.3 软件工程的标准化
11.3.1 软件工程标准化意义
11.3.2 软件工程标准化组织与标准
11.3.3 我国的软件工程标准
11.4 软件工程中的文档
11.4.1 文档的作用
11.4.2 文档的分类
11.4.3 常用的软件文档
11.4.4 文档编制的质量要求
11.5 软件项目管理
11.5.1 软件项目成本控制
11.5.2 项目进度安排
11.5.3 项目管理内容
11.5.4 软件配置管理
11.6 软件质量保证
11.6.1 软件质量的概念
11.6.2 软件质量保证手段
小结
习题十一
*第12章 应用系统开发
12.1 应用系统开发原理
12.1.1 应用系统组成
12.1.2 应用系统开发步骤
12.2 应用系统组成
12.2.1 应用系统的基础平台
12.2.2 应用系统的数据资源层
12.2.3 应用系统的业务逻辑层
12.2.4 应用系统的应用表现层
12.2.5 应用系统的用户层
12.2.6 典型的应用系统组成介绍
*12.3 应用系统开发实例——电子点菜系统
12.3.1 电子点菜系统简介
12.3.2 需求调查
12.3.3 需求分析
12.3.4 系统设计
12.3.5 系统平台
12.3.6 系统详细设计
12.3.7 系统结构图
12.3.8 系统实现
小结
习题十二
实验五 应用系统开发
参考文献
前 言
“计算机软件基础”是一门新的课程,经过近年来的发展,已成为我国计算机相关专业的一门重要课程。但是,由于缺乏经验的积累,对课程的一些重要认识与具体措施尚需探讨,只有这样,这门课的教材才能有编写的基础和方向。因此,在策划编写此教材前我们首先需探讨该门课程的几个关键性问题,在此基础上,再讨论有关教材的问题。
在此处分两大问题讨论:一个是有关课程问题;另一个是有关教材问题。
一、有关课程的几个原则性问题探讨
下面分3个问题针对课程的原则性做讨论,它们是:课程目标对象、课程目标定位,以及课程内容定位。只有兼顾这3个问题,教材的编写才有坚实的基础。
1.课程目标对象
“计算机软件基础”课程的目标对象经历了两个阶段变化,它们是:
阶段:在课程开设初期,此课程主要为与计算机有一定关联的专业(如电子、电力金融、机械、自控等专业)所开设的,其目的是为了使这些专业的学生能对计算机方面的知识有更多的了解。一般传统的计算机课程(如计算机基础及程序设计语言等)已不能满足要求,但又受课时限制,因此,就将多门计算机相关课程打包于一体组成一门新的课程——计算机软件基础。之所以课程仅限介绍软件,主要是由于这些专业的需求均以计算机应用为主,而应用又直接以软件为基础,因此,计算机软件基础课就成为这些专业的又一门公共基础课程。
因此,在阶段中,计算机软件基础课的目标对象是与计算机有一定联系的专业所开设的本科公共基础课程,其预修课程是计算机基础与程序设计语言。
第二阶段:随着计算机应用的兴起,计算机应用类专业(如计算机网络、嵌入式应用、电子商务等)蓬勃发展,特别是近期,应用类专业备受国家重视,并在*的支持下进行着深化教学改革,其重点内容之一是突出计算机理论与实际应用的结合。因此,新的实用性课程纷纷出现,而传统的计算机核心课程受到了冲击,为精简课程,强化实用,须对部分核心课程进行归并重组。“计算机软件基础”课程就是在此形势之下出现的,适于计算机应用类专业,特别是偏硬件类专业作为专业基础课或专业课之用。
因此,在第二阶段中,“计算机软件基础”的目标对象是计算机应用类专业所开设的本科专业基础课或专业课,其预修课程是计算机导论及程序设计语言。
目前,此门课程同时适合于两类不同专业的教学需求。
2.课程目标定位
我们认为该课程是建立在其目标对象基础上的。基于这种认识,它的目标定位应该是:提供全面、完整的计算机软件知识,能做基本的软件应用开发,为相关专业提供后续课程支撑,为学生通过相关计算机专业考试(如水平考试、等级考试等)提供基础。下面对其做必要的解释:
(1)“计算机软件基础”课程的首要目标是使学生全面、完整地掌握软件的知识,为学生今后的学习与应用计算机打下坚实的基础。
(2)除了掌握知识外,另一个重要目标是具有初步从事计算机软件开发的能力。
(3)由于计算机应用类专业及计算机相关专业的很多后续课程都需要有较深厚的软件基础知识与一定的开发能力,如自控专业的嵌入式系统课程、电力专业的电力调度课程、遥控遥测专业的图像分析与处理课程以及机械专业的CAD/CAM课程等,因此都需要有一定软件知识与能力的支持。
(4)计算机应用类专业及计算机相关专业的学生在校期间一般都必须通过并获得相关的资质证书,如计算机水平考试、等级考试等,此门课程可为学生的资质证书获取提供软件方面的知识基础。
3.课程内容定位
在确定了课程的目标对象与目标定位后,接着就可以讨论课程内容定位了,可以包括如下一些认识:
(1)按学科体系介绍计算机软件。本门课程主要介绍计算机软件,而软件是一门学科,因此本课程按学科体系介绍软件。一般情况下,在介绍计算机软件时可有多种不同体系的介绍方法。目前常用的是按不同课程体系介绍,这种方法是将整个软件划分成若干门不同课程内容介绍。它的弊病是概念分裂、内容隔离,将一个具有完整体系的软件学科肢解成一门门的课程内容介绍。因此,在本课程中采用按学科体系介绍,此种方法是将软件还原成统一的概念与完整的体系,在学科分支间具有紧密的关联,按此种方法,学生所接受到的软件知识是概念上统一的、内容上关联的、知识体系上完整的。
(2)新旧兼蓄、吐故纳新。计算机软件学科发展很快,但目前的教材内容相对滞后,因此在教材中新旧兼蓄、吐故纳新特别重要,这表示在教材中扩充新的内容的同时淘汰及修正旧的内容,使教材能保持与学科的同步发展,其典型的例子是传统的软件与数据的概念需要修正,网络软件、Web应用内容需要增添,而如操作系统中的作业管理、数据库中的嵌入式SQL等内容则需要淘汰。
(3)全面介绍、重点突出。本课程是软件的“基础性”课程,因此必须对软件学科做全面介绍,但由于软件学科的内容众多,不可能在一门课中对它的各分支都做详细介绍,只能择要做重点介绍。因此,全面介绍、重点突出是本门课程内容组织的核心思想。
(4)理论与应用兼顾,原理与操作并重。计算机软件学科是一门既有理论又有应用,既有原理又有操作的学科,而软件之所以受众多专业重视和青睐,其根本原因在于它的应用性,而应用又需要操作、理论与原理的支持。故而在计算机软件基础课程中不仅要传授理论知识,也要传授如何应用知识;不仅要介绍原理,也要学习操作。只有这样,学生所掌握的软件知识才是全面的;只有这样,学生才能既掌握原理与理论性知识,又能将它们应用于实际。
二、有关教材的几个具体问题探讨
在对课程的原则性问题进行探讨后,就可以对课程的教材做具体策划了,包括下面几个方面。
1.读者对象
本教材的读者对象为计算机应用类专业或计算机相关专业的本科学生。
2.学时数
本教材适于38~54学时的课程,提供了5个实验可供教师选择使用。
3.教材内容
本教材内容以课程内容定位所确定的4个原则为指导,进行组织与安排:
(1)按软件学科体系分为4篇,分别是:计算机软件总论、计算机软件基础理论、计算机软件系统及计算机软件开发。
(2)将软件的重要基础性概念做统一介绍,包括:计算机系统概念、软件概念、算法概念及数据概念等。
(3)对软件内容做全面介绍,按学科体系分别对软件学科的所有分支内容做介绍,包括:
① 计算机软件总论——软件基本概念、计算机系统概念。
② 计算机软件基础理论——算法理论、数据理论(包括数据结构)。
③ 计算机软件系统——语言及其处理系统、操作系统、数据库管理系统、支撑软件系统、应用软件系统、网络软件系统等。
④ 计算机软件开发——软件工程、软件应用系统开发。
此外,还对各分支内容间的关联做介绍,对各分支相关操作及应用做介绍。
(4)在全面介绍基础上先对部分内容做重点介绍,它们是:软件基本概念、数据结构、操作系统、数据库管理系统、网络软件系统及软件工程。
(5)本书注重实际操作能力的培养,并设置了5个实验,包括:算法实验、数据结构实验、数据库实验、Web开发实验及应用系统开发实验。
(6)本书注重学科交叉,关注空白的填补与重复内容的删除。
计算机软件学科各分支间内容交叉,关系复杂,因此,在书中须减少重复,注意填补空档,突出学科交叉,使其构成一个完整、全面的学科体系。
在具体教材内容安排中主要包括:
① 突出学科交叉——软件与网络的交叉是网络软件;模块设计与数据库设计的交叉是软件系统设计;数据结构、数据文件系统、数据库管理系统及Web数据的交叉是数据理论,这些学科交叉知识需突出介绍。
② 填补空档——支撑软件与应用软件往往是软件教材内容中的空档,应予填补,而跨越硬件与软件的应用系统、有关软件概念与数据概念也属空档,需要填补。
③ 关注重复——软件教材中大量内容重复、概念混乱,如有关软件设计、数据等内容普遍存在着重复与混乱。在本书中,采用概念与内容上的统一,避免了不必要的重复。
(7)能满足两类不同专业的要求。本书既适应计算机相关专业学生,也适应计算机应用类专业学生的教学需求。这主要是由于这些不同教学对象均有相同的目标定位,但是由于专业需求不同,计算机应用类专业学生对软件知识与操作要求高于计算机相关专业的学生,因此在本书中按较高的应用类专业要求编写,而在教学时可按不同专业选用不同内容讲授,在书中凡带有“*”的章节属较高层次要求,教师可根据需要灵活选用。
4.教材内容组织
根据上面教材内容的7点要求,我们在内容组织上采用少而精的原则,具体表现为:对每章内容精心组织、精选素材,选用那些典型性和代表性的内容,淘汰过时的、非本质的、不具代表性的内容。
通过统一概念,减少重复的方法大量精简内容。终,将本教材的内容组织成4篇12章5个实验,其具体安排如下:
(1)篇 计算机软件总论,主要介绍计算机系统与计算机软件的概念以及计算机软件与计算机间的关系。共有两章:
第1章 现代计算机系统介绍;
第2章 计算机软件概述。
(2)第二篇 计算机软件基础理论,主要介绍软件学科的两大基础理论——算法理论与数据理论。共有3章:
第3章 算法理论;
第4章 数据基础;
第5章 数据结构及其应用。
本篇还有两个实验:
实验一 算法;
实验二 数据结构。
(3)第三篇 计算机软件系统,主要介绍软件学科的主要内容,包括软件中的系统软件——操作系统、语言及其处理系统,数据库管理系统以及支撑软件系统、软件应用系统等。此外,还包括网络软件系统介绍等。共有5章:
第6章 操作系统——系统软件之一;
第7章 程序设计语言及语言处理系统——系统软件之二;
第8章 数据库系统——系统软件之三;
第9章 支撑软件与应用软件系统;
第10章 计算机网络软件与互联网软件。
本篇有两个实验:
实验三 数据库;
实验四 Web开发。
(4)第四篇 计算机软件开发,开发是软件应用的主要目标,主要包括开发的方法——软件工程以及应用软件开发。共有两章:
第11章 软件工程;
第12章 应用系统开发。
本篇有一个实验:
实验五 应用软件开发。
本书为配合教学需要,每章都提供内容小结供学生复习之用,并配有习题,全书还附有电子教案供教师使用。
本书由南京大学徐洁磐任主编,深圳大学封玲及北京中医药大学李书珍任副主编,湖南女子学院陈宏及北京中医药大学郭凤英参编,并由南京大学史九林教授审稿,对全书提出了诸多宝贵意见,特此表示衷心感谢。本书在编写过程中,还得到南京大学计算机软件新技术国家重点实验室的支持,同时得到南京大学徐永森教授、金志权教授、南京航天航空大学林钧海教授及宁波大学邰晓英教授的帮助和指导,在此一并表示感谢。
“计算机软件基础”是一门新的课程,在教材编写中有很多问题有待研究与探讨,由于水平有限,希望读者提出宝贵意见,以使其进一步修改完善。
编者
于南京大学
2013年3月
在此处分两大问题讨论:一个是有关课程问题;另一个是有关教材问题。
一、有关课程的几个原则性问题探讨
下面分3个问题针对课程的原则性做讨论,它们是:课程目标对象、课程目标定位,以及课程内容定位。只有兼顾这3个问题,教材的编写才有坚实的基础。
1.课程目标对象
“计算机软件基础”课程的目标对象经历了两个阶段变化,它们是:
阶段:在课程开设初期,此课程主要为与计算机有一定关联的专业(如电子、电力金融、机械、自控等专业)所开设的,其目的是为了使这些专业的学生能对计算机方面的知识有更多的了解。一般传统的计算机课程(如计算机基础及程序设计语言等)已不能满足要求,但又受课时限制,因此,就将多门计算机相关课程打包于一体组成一门新的课程——计算机软件基础。之所以课程仅限介绍软件,主要是由于这些专业的需求均以计算机应用为主,而应用又直接以软件为基础,因此,计算机软件基础课就成为这些专业的又一门公共基础课程。
因此,在阶段中,计算机软件基础课的目标对象是与计算机有一定联系的专业所开设的本科公共基础课程,其预修课程是计算机基础与程序设计语言。
第二阶段:随着计算机应用的兴起,计算机应用类专业(如计算机网络、嵌入式应用、电子商务等)蓬勃发展,特别是近期,应用类专业备受国家重视,并在*的支持下进行着深化教学改革,其重点内容之一是突出计算机理论与实际应用的结合。因此,新的实用性课程纷纷出现,而传统的计算机核心课程受到了冲击,为精简课程,强化实用,须对部分核心课程进行归并重组。“计算机软件基础”课程就是在此形势之下出现的,适于计算机应用类专业,特别是偏硬件类专业作为专业基础课或专业课之用。
因此,在第二阶段中,“计算机软件基础”的目标对象是计算机应用类专业所开设的本科专业基础课或专业课,其预修课程是计算机导论及程序设计语言。
目前,此门课程同时适合于两类不同专业的教学需求。
2.课程目标定位
我们认为该课程是建立在其目标对象基础上的。基于这种认识,它的目标定位应该是:提供全面、完整的计算机软件知识,能做基本的软件应用开发,为相关专业提供后续课程支撑,为学生通过相关计算机专业考试(如水平考试、等级考试等)提供基础。下面对其做必要的解释:
(1)“计算机软件基础”课程的首要目标是使学生全面、完整地掌握软件的知识,为学生今后的学习与应用计算机打下坚实的基础。
(2)除了掌握知识外,另一个重要目标是具有初步从事计算机软件开发的能力。
(3)由于计算机应用类专业及计算机相关专业的很多后续课程都需要有较深厚的软件基础知识与一定的开发能力,如自控专业的嵌入式系统课程、电力专业的电力调度课程、遥控遥测专业的图像分析与处理课程以及机械专业的CAD/CAM课程等,因此都需要有一定软件知识与能力的支持。
(4)计算机应用类专业及计算机相关专业的学生在校期间一般都必须通过并获得相关的资质证书,如计算机水平考试、等级考试等,此门课程可为学生的资质证书获取提供软件方面的知识基础。
3.课程内容定位
在确定了课程的目标对象与目标定位后,接着就可以讨论课程内容定位了,可以包括如下一些认识:
(1)按学科体系介绍计算机软件。本门课程主要介绍计算机软件,而软件是一门学科,因此本课程按学科体系介绍软件。一般情况下,在介绍计算机软件时可有多种不同体系的介绍方法。目前常用的是按不同课程体系介绍,这种方法是将整个软件划分成若干门不同课程内容介绍。它的弊病是概念分裂、内容隔离,将一个具有完整体系的软件学科肢解成一门门的课程内容介绍。因此,在本课程中采用按学科体系介绍,此种方法是将软件还原成统一的概念与完整的体系,在学科分支间具有紧密的关联,按此种方法,学生所接受到的软件知识是概念上统一的、内容上关联的、知识体系上完整的。
(2)新旧兼蓄、吐故纳新。计算机软件学科发展很快,但目前的教材内容相对滞后,因此在教材中新旧兼蓄、吐故纳新特别重要,这表示在教材中扩充新的内容的同时淘汰及修正旧的内容,使教材能保持与学科的同步发展,其典型的例子是传统的软件与数据的概念需要修正,网络软件、Web应用内容需要增添,而如操作系统中的作业管理、数据库中的嵌入式SQL等内容则需要淘汰。
(3)全面介绍、重点突出。本课程是软件的“基础性”课程,因此必须对软件学科做全面介绍,但由于软件学科的内容众多,不可能在一门课中对它的各分支都做详细介绍,只能择要做重点介绍。因此,全面介绍、重点突出是本门课程内容组织的核心思想。
(4)理论与应用兼顾,原理与操作并重。计算机软件学科是一门既有理论又有应用,既有原理又有操作的学科,而软件之所以受众多专业重视和青睐,其根本原因在于它的应用性,而应用又需要操作、理论与原理的支持。故而在计算机软件基础课程中不仅要传授理论知识,也要传授如何应用知识;不仅要介绍原理,也要学习操作。只有这样,学生所掌握的软件知识才是全面的;只有这样,学生才能既掌握原理与理论性知识,又能将它们应用于实际。
二、有关教材的几个具体问题探讨
在对课程的原则性问题进行探讨后,就可以对课程的教材做具体策划了,包括下面几个方面。
1.读者对象
本教材的读者对象为计算机应用类专业或计算机相关专业的本科学生。
2.学时数
本教材适于38~54学时的课程,提供了5个实验可供教师选择使用。
3.教材内容
本教材内容以课程内容定位所确定的4个原则为指导,进行组织与安排:
(1)按软件学科体系分为4篇,分别是:计算机软件总论、计算机软件基础理论、计算机软件系统及计算机软件开发。
(2)将软件的重要基础性概念做统一介绍,包括:计算机系统概念、软件概念、算法概念及数据概念等。
(3)对软件内容做全面介绍,按学科体系分别对软件学科的所有分支内容做介绍,包括:
① 计算机软件总论——软件基本概念、计算机系统概念。
② 计算机软件基础理论——算法理论、数据理论(包括数据结构)。
③ 计算机软件系统——语言及其处理系统、操作系统、数据库管理系统、支撑软件系统、应用软件系统、网络软件系统等。
④ 计算机软件开发——软件工程、软件应用系统开发。
此外,还对各分支内容间的关联做介绍,对各分支相关操作及应用做介绍。
(4)在全面介绍基础上先对部分内容做重点介绍,它们是:软件基本概念、数据结构、操作系统、数据库管理系统、网络软件系统及软件工程。
(5)本书注重实际操作能力的培养,并设置了5个实验,包括:算法实验、数据结构实验、数据库实验、Web开发实验及应用系统开发实验。
(6)本书注重学科交叉,关注空白的填补与重复内容的删除。
计算机软件学科各分支间内容交叉,关系复杂,因此,在书中须减少重复,注意填补空档,突出学科交叉,使其构成一个完整、全面的学科体系。
在具体教材内容安排中主要包括:
① 突出学科交叉——软件与网络的交叉是网络软件;模块设计与数据库设计的交叉是软件系统设计;数据结构、数据文件系统、数据库管理系统及Web数据的交叉是数据理论,这些学科交叉知识需突出介绍。
② 填补空档——支撑软件与应用软件往往是软件教材内容中的空档,应予填补,而跨越硬件与软件的应用系统、有关软件概念与数据概念也属空档,需要填补。
③ 关注重复——软件教材中大量内容重复、概念混乱,如有关软件设计、数据等内容普遍存在着重复与混乱。在本书中,采用概念与内容上的统一,避免了不必要的重复。
(7)能满足两类不同专业的要求。本书既适应计算机相关专业学生,也适应计算机应用类专业学生的教学需求。这主要是由于这些不同教学对象均有相同的目标定位,但是由于专业需求不同,计算机应用类专业学生对软件知识与操作要求高于计算机相关专业的学生,因此在本书中按较高的应用类专业要求编写,而在教学时可按不同专业选用不同内容讲授,在书中凡带有“*”的章节属较高层次要求,教师可根据需要灵活选用。
4.教材内容组织
根据上面教材内容的7点要求,我们在内容组织上采用少而精的原则,具体表现为:对每章内容精心组织、精选素材,选用那些典型性和代表性的内容,淘汰过时的、非本质的、不具代表性的内容。
通过统一概念,减少重复的方法大量精简内容。终,将本教材的内容组织成4篇12章5个实验,其具体安排如下:
(1)篇 计算机软件总论,主要介绍计算机系统与计算机软件的概念以及计算机软件与计算机间的关系。共有两章:
第1章 现代计算机系统介绍;
第2章 计算机软件概述。
(2)第二篇 计算机软件基础理论,主要介绍软件学科的两大基础理论——算法理论与数据理论。共有3章:
第3章 算法理论;
第4章 数据基础;
第5章 数据结构及其应用。
本篇还有两个实验:
实验一 算法;
实验二 数据结构。
(3)第三篇 计算机软件系统,主要介绍软件学科的主要内容,包括软件中的系统软件——操作系统、语言及其处理系统,数据库管理系统以及支撑软件系统、软件应用系统等。此外,还包括网络软件系统介绍等。共有5章:
第6章 操作系统——系统软件之一;
第7章 程序设计语言及语言处理系统——系统软件之二;
第8章 数据库系统——系统软件之三;
第9章 支撑软件与应用软件系统;
第10章 计算机网络软件与互联网软件。
本篇有两个实验:
实验三 数据库;
实验四 Web开发。
(4)第四篇 计算机软件开发,开发是软件应用的主要目标,主要包括开发的方法——软件工程以及应用软件开发。共有两章:
第11章 软件工程;
第12章 应用系统开发。
本篇有一个实验:
实验五 应用软件开发。
本书为配合教学需要,每章都提供内容小结供学生复习之用,并配有习题,全书还附有电子教案供教师使用。
本书由南京大学徐洁磐任主编,深圳大学封玲及北京中医药大学李书珍任副主编,湖南女子学院陈宏及北京中医药大学郭凤英参编,并由南京大学史九林教授审稿,对全书提出了诸多宝贵意见,特此表示衷心感谢。本书在编写过程中,还得到南京大学计算机软件新技术国家重点实验室的支持,同时得到南京大学徐永森教授、金志权教授、南京航天航空大学林钧海教授及宁波大学邰晓英教授的帮助和指导,在此一并表示感谢。
“计算机软件基础”是一门新的课程,在教材编写中有很多问题有待研究与探讨,由于水平有限,希望读者提出宝贵意见,以使其进一步修改完善。
编者
于南京大学
2013年3月
评论
还没有评论。