计算机软件技术基础
作者 : 徐洁磐 李臣明 史九林 编著
出版日期 : 2010-07-14
ISBN : 978-7-111-30868-3
适用人群 : 普通高校IT专业类(如通讯、自控、电子等)本科学生
定价 : 28.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 249
开本 : 16
原书名 :
原出版社:
属性分类: 教材
包含CD :
绝版 :
图书简介

(1)全面介绍:对计算机软件作全面、统一的介绍,使学生能对软件有一个完整的认识,而不是分裂的、局部的认识(2)重点突出:在软件的几个部分中重点突出数据结构、操作系统、数据库及软件工程等内容(3)面向应用:为嵌入式应用、控制管理及其它应用提供支撑。
本书共四篇9章,全面介绍计算机软件技术的基础、系统与工程应用,它们是:第一篇:引言共1章,全面介绍计算机软件技术的概况、分类与内容以及它在计算机系统中的地位与作用。第二篇:基础篇共2章,介绍计算机软件的程序与数据基础理论与应用。第三篇:系统篇共4章,介绍计算机软件中的四种常用系统,它们是系统软件—操作系统,程序设计语言及语言处理系统及数据库管理系统,此外还介绍应用软件系统。第四篇:开发篇共2章,介绍计算机软件开发的工程原理与应用,同时通过一个具体例子,全面了解软件各部分的关系与特点。

图书特色

本书全面、系统地介绍了计算机软件知识,不仅能满足自动控制、通信、电子、遥感遥测、电子商务、信息管理等专业的需要,而且还能满足对计算机专业知识有一定深度要求的机械、电力、金融、保险等专业的需要。全书力求语言通俗易懂,理论联系实际,为相关专业提供后续课程支撑,同时也为学生通过相关计算机专业考试(如水平考试、等级考试等)提供支撑。
内容全面、重点突出。全面介绍了软件基本概念、算法理论、数据基础、数据结构、程序设计基础、操作系统、语言处理系统、数据库系统、软件支撑系统、软件应用系统、软件工程以及应用系统开发等软件相关的所有主要内容,并对最具代表性与基础性的数据结构、操作系统、数据库系统及软件工程进行重点介绍。
统一概念、完整体系。克服了常规计算机软件教材将软件分割成若干个分支和课程而带来的概念分裂、内容隔离等弊端,使学生学到的软件知识是统一与完整的。
重视基础、强调实践。以介绍基本概念、思想、方法等软件技术中的原理知识为主,使学生能掌握软件技术的基本知识,同时讲解了涉及全局的一些基本操作(如数据结构中的操作、数据库中的SQL语言以及软件工程中的结构化开发方法的基本操作流程),这些操作与原理互相协调和支撑,构成一个完整的知识体。
详略得当、言简意赅。对各章内容精心组织,选取了最具典型、最具代表性的内容,大胆淘汰了非典型的、非本质的内容。
本书特点

图书前言

“计算机软件技术”是一门新的课程,经过这几年的发展已逐渐成形,同时也出现了一些优秀教材。但毋庸讳言的是,对课程的一些重要核心问题的研究尚需探讨,认识尚需理清,特别是对下面的两个关键性问题更需有一个一致的认识:
   课程目标对象
   课程目标定位
  我们在编写本书的过程中一直围绕着这两个问题来展开,经过广泛调查、研究与探讨,我们认为:
一、课程目标对象
  由于计算机的发展,计算机的应用已普及至多个专业领域,而且已成为这些专业必不可少的组成部分,因此需要对计算机专业知识有更多的了解,而目前的传统课程,如计算机基础与程序设计语言等已不能满足它们的要求,但是受课时所限又不能开设多门课程,因此就出现了综合多门计算机专业知识于一体的“计算机软件技术”课程。此课程之所以仅介绍“软件”,主要是由于这些专业的需求以计算机应用为主,而应用是直接以软件作为其基础的。因此“计算机软件技术”课程成为这些专业的又一门公共课程。
  涉及较多计算机知识的专业包括两个层次:
   第一层次:与计算机紧密相关的专业,它们对计算机专业知识的要求很高,这些专业包括自动控制、通信、电子、遥感遥测、电子商务、信息管理等。
   第二层次:与计算机有一定关联的专业,它们对计算机专业知识有一定深度的要求,这些专业包括机械、电力、金融、保险等。
  上面两个层次的专业可统称为计算机相关专业。
  因此我们认为,“计算机软件技术”课程的目标对象应该是计算机相关专业的本科公共课程,其预修课程是计算机基础及程序设计语言课。
二、课程目标定位
  “计算机软件技术”课程的目标定位是该课程设置的第二个需讨论的问题。首先,我们认为它是建立在课程目标对象基础上的,即该课程应该是计算机相关专业的一门公共基础课程。基于此种认识,它的目标定位应该是:
   为相关专业提供计算机软件的全面、完整的知识。
   为相关专业提供后续课程支撑。
   为学生通过相关计算机专业考试(如水平考试、等级考试等)提供支撑。
  下面对这些目标定位进行必要的解释:
  1)“计算机软件技术”课程的首要目标是使学生全面与完整地掌握软件知识,为他们今后应用计算机打下坚实的基础。
  2)由于相关专业的很多后续课程都与计算机有关,如自控专业的嵌入式系统课程、电力专业的电力调度相关课程等,它们都需要软件技术知识的支撑。
  3)由于这些相关专业学生在学期间一般还需要获得计算机相应资质的证书(如计算机水平考试、等级考试等),所以此门课程可为他们的资质取得提供计算机软件方面的支撑。
  本书是在对上述两个关键问题的统一认识基础上编写的,在编写过程中坚持如下五个原则:
  1全面介绍,突出重点
  本课程是一门基础性课程,因此必须对软件技术作全面、完整的介绍,但又不可能在一门课中对软件的各分支作详细介绍,只能择其重要主题作重点介绍,因此全面介绍、突出重点是本书内容组织的核心思想,它既能考虑到面,又能照顾到点。内容具体安排如下:
  1)全面介绍:本书分四个部分,全面介绍了软件基本概念、算法理论、数据基础、数据结构、程序设计基础、操作系统、语言处理系统、数据库系统、软件支撑系统、软件应用系统、软件工程以及应用系统开发等十二个分支内容,涵盖了软件的所有主要内容。
  2)突出重点:在全面介绍的基础上,我们挑选出最具代表性与基础性的四个主题作为重点,即数据结构、操作系统、数据库系统及软件工程。
  2统一概念,完整体系
  从学科观点讲,软件是一门独立的学科,它有其自身统一的概念、完整的体系。但为了研究与教学方便,长期以来将其分割成若干个分支与课程,这虽有利于研究与学习,但是长期分割也带来了概念分裂、内容隔离等弊端。而在计算机软件课程中必须还原其学科本来面目,使其有一个统一的概念与完整的体系,因此在课程内容组织中按软件学科体系组织,并统一概念。这样,学生所学到的软件知识是统一与完整的,而不是分裂的、隔离的。在本书中统一概念与完整体系主要体现在如下几个方面:
  1)在内容组织上按软件含义分为程序、数据与文档;又按软件具体内容分为理论、系统与开发,它们分属两个不同维度,组成一个二维结构体系,而软件的12个分支内容则分属于二维世界中的9个不同范围,从而构成一个完整的体系。(具体参见13节)。
  2)在长期的分割状态中软件的很多基本概念被分裂,在本教材中将予以统一,其代表性的概念是:
   数据概念:数据概念在软件各分支中都有大量出现且根据不同需要而有不同的理解与定义。如在数据结构中、数据库系统中、操作系统的文件系统中、程序设计语言中以及应用软件开发中等。第3章对数据概念专门进行了统一全面的介绍。
   软件概念:在软件的专门教材中都会出现软件的各种理解和定义,由于各分支的研究背景与对象的不同造成了对软件认识的不一致,本书第1章对软件的概念进行了整体与全面的介绍。这种概念的统一既有利于对概念的全面了解,也有利于各分支局部理解所造成的片面认识,同时也可纠正过去的混乱并节约了大量篇幅。
   算法概念:算法概念在软件中多处都有出现,本书第2章对其进行了统一、全面的介绍。
  3减少重复,填补空缺
  在软件的各分支及课程的划分中往往存在着内容的重复与空缺,而由于本书采用了统一、完整的体系,因而可以避免这些现象的出现。
  在本书中我们对在多个分支中出现的重复以及多门课程中的空缺均予以合并与补充,具体如下:
  1)在软件工程与数据库系统中均有系统分析与设计的内容,前者着重程序设计而后者着重数据设计,但多处内容是重复的。我们在编写中将其统一合并至软件工程内容中。
  2)对软件系统中的支撑软件与应用软件往往没有专门课程予以介绍,从而造成软件整体上的缺陷,本书第8章专门对这方面进行了介绍,以填补过去的空缺。
  3)对跨越软件与硬件的应用系统也往往没有专门课程予以介绍,从而造成跨越学科的缺陷,本书第10章专门对这方面进行了介绍,以填补此方面的缺陷。
  4原理为主,兼顾操作
  由于该课程是一门基础性课程,因此要将有关软件技术中的基本概念、思想、方法讲清楚,这是首要的事情,同时也要对关乎全局的基本操作进行介绍。而且两者要相互支撑、相互协调。
  本书以介绍基本概念、思想、方法等软件技术中的原理知识为主,使学生能掌握软件技术的基本知识,同时对涉及全局的一些基本操作,如数据结构中的操作、数据库中的SQL语言以及软件工程中的结构化开发方法的基本操作流程进行介绍,而这些操作与原理是互相协调、互相支撑的,它们构成了一个完整的知识体。
  5精心组织,精选内容
  软件技术只是一门课程,但它的内容很多,且涉及多门软件分支与课程,如何在一门课程的有限学时中将应讲授的内容都能加以介绍,这是一个值得探讨的问题。
  解决此问题的方法有两个:
  1)通过前面的统一概念、减少重复等手段可以大量精简内容。
  2)对每章内容通过精心组织与精选内容的方法加以精简。总而言之,采用少而精的原则,对每个章的内容抽取其最典型、最具代表性的内容并重新组织,而大胆淘汰那些非典型的、非本质的内容。
  本书每章内容的精髓都作了提炼,具体如下:
  第1章:重点介绍软件概念
  第2章:重点介绍算法概念
  第3章:重点介绍数据概念
  第4章:重点介绍数据的逻辑结构及基本操作
  第5章:重点介绍操作系统基本原理
  第6章:重点介绍程序设计语言与编译系统基本概貌
  第7章:重点介绍关系数据库管理系统的原理与基本操作
  第8章:重点介绍支撑软件与应用软件的基本概念
  第9章:重点介绍结构化分析与设计及文档
  第10章:重点介绍应用系统开发原理
  本书适合作为计算机相关专业的“计算机软件技术”课程的教材,学时以3节/周~4节/周为宜,书中有“*”标记的内容可供教师自由挑选。
  本书每章都提供复习指导,供学生复习之用,并附有习题。全书还配有电子教案供教师使用。
  本书由徐洁磐、李臣明及史九林联合编写,其中徐洁磐负责第1、2、3、7、8和9章;李臣明负责第5、10章;史九林负责第4、6章的编写,最后由徐洁磐负责全书统稿。
  本书由东南大学孙志辉教授审稿,在审稿过程中他对全书提出了诸多宝贵意见,在此表示衷心感谢。
  本书在编写过程中还得到南京大学计算机软件新技术国家重点实验室以及河海大学计算机与信息学院的支持;同时还得到了南京航空航天大学林钧海教授、宁波大学邰晓英教授的帮助和指导,在此一并表示感谢。
  计算机软件技术是一门新的课程,作者经验不足,水平有限,希望广大读者提出宝贵意见,以便进一步完善。
作者于南京大学
2010年2月

上架指导

计算机科学及应用

作者简介

徐洁磐 李臣明 史九林 编著:待补。

图书目录

前言
第一篇概论篇
第1章计算机软件概论
11计算机系统与计算机软件
12计算机软件的基本概念
13软件的分类
14计算机软件的内容
本章复习指导
习题1
第二篇基础篇
第2章算法理论
21算法的基本概念
22算法的基本特征
23算法的基本要素
24算法描述
241形式化描述
242半形式化描述
243非形式化描述
*25算法的设计
26算法评价
27一个完整的算法表示
28几点说明
本章复习指导
习题2
第3章数据基础
31数据基本概念
311数据定义
312数据组成
313数据元素
32数据操纵与数据结构
321数据操纵
322广义数据结构
33数据分类
331数据特性分析与分类
332数据的三种分类之间的关系
34数据发展历史简介
35数据理论的深层次认识
本章复习指导
习题3
第4章数据结构
41概述
411数据元素
412数据的逻辑结构
413数据的物理结构
414物理结构的实现
415关于数据结构中的算法
42线性结构
421线性表
422栈
423队列
424串
43树结构
431一般树
432二叉树
44图结构
441图的定义
442图的几个术语及基本性质
443对图的基本操作
444图的存储结构
445图的遍历
本章复习指导
习题4
第三篇系统篇
第5章操作系统
51基本概念
511什么是操作系统
512操作系统的分类
513操作系统的功能
514操作系统的结构
52CPU管理与中断管理
521进程描述与进程控制
522进程同步、互斥与进程通信
523线程
524CPU调度
525中断管理
53存储管理
531内存分配
532地址重定位
533虚拟存储器及虚拟存储管理
54设备管理
541设备管理概述
542设备控制技术
543缓冲技术
544设备的分配与调度算法
545SPOOLING技术
546设备驱动程序
547外部存储器的管理
55文件管理
551文件系统及其结构
552文件的组织结构
553文件的目录管理
554文件的存储空间管理
555文件的存取控制
556文件的操作
56操作系统的用户接口
561操作系统的用户接口分类
562三种接口方式介绍
*57常用操作系统介绍
571Windows操作系统
572UNIX操作系统
573Linux操作系统
本章复习指导
习题5
第6章程序设计语言与语言处理系统
61概述
62程序与程序设计语言
621程序和程序设计
622程序设计语言
623高级语言的文法结构
63语言处理系统
631几个有关概念
632汇编程序
633解释程序
634编译程序
635语言环境
本章复习指导
习题6
第7章数据库系统
71基本概念
711数据库系统概述
712数据管理
713数据处理
72数据模型
721数据模型的基本概念
722概念模型
723逻辑模型
724物理模型
73关系模型数据库管理系统
731数据定义功能
732数据操纵功能
733数据控制功能
74关系数据库管理系统标准语言SQL
741SQL概述
742SQL的数据定义语句
743SQL的查询语句
744SQL分层结构查询
745SQL的更新语句
746SQL的统计、计算及分类
747SQL的视图语句
748SQL的数据控制语句
*75主流数据库产品价格
751大型数据库产品Oracle
752小型数据库产品SQL Server
753桌面式数据库产品Access及VFP
本章复习指导
习题7
*第8章支撑软件与应用软件
81支撑软件
811支撑软件的基本概念
812中间件
82应用软件
821概述
822应用软件组成
823典型应用软件介绍
本章复习指导
习题8
第四篇开发篇
第9章软件工程
91软件工程概述
911软件危机与软件工程
912软件工程的基本概念
913软件开发方法
914软件开发工具
915软件开发过程
916软件开发过程中的生存周期模型
917软件产品文档与标准
918软件质量保证
919软件项目管理
92结构化开发方法
921结构化开发方法介绍
922结构化分析方法
923系统设计
924系统编码
925测试
926运行与维护
93软件工程标准化
931软件工程标准化的意义
932软件工程标准化组织与标准
933我国的软件工程标准
94软件工程中的文档
941文档的作用
942文档的分类
943常用的软件文档
944文档编制的质量要求
95软件项目管理
951软件项目成本控制
952项目进度安排
953项目管理内容
954软件配置管理
96软件质量保证
961软件质量的概念
962保证软件质量的手段
本章复习指导
习题9
*第10章应用系统开发
101应用系统开发原理
1011应用系统组成概述
1012应用系统开发步骤
102应用系统组成
1021应用系统基础平台
1022应用系统的资源管理层
1023应用系统的业务逻辑层
1024应用系统的应用表现层
1025应用系统的用户层
1026典型的应用系统组成介绍
103应用系统开发实例——嵌入式电子点菜系统
1031嵌入式电子点菜系统简介
1032需求调查
1033系统分析
1034系统设计
1035系统平台
1036系统详细设计
1037系统结构图
1038系统实现
本章复习指导
习题10
附录数据结构的部分实验程序
参考文献

教学资源推荐
作者: 刘艺 王春生 等编著
作者: (比)Claude Oestges;Bruno Clerckx 著
作者: [法]吕克·若兰(Luc Jaulin) 著