新書推薦:
《
纷纭万端 : 近代中国的思想与社会
》
售價:HK$
109.8
《
中国古代文体形态研究(第四版)(中华当代学术著作辑要)
》
售價:HK$
168.0
《
朋党之争与北宋政治·大学问
》
售價:HK$
99.7
《
甲骨文丛书·波斯的中古时代(1040-1797年)
》
售價:HK$
88.5
《
以爱为名的支配
》
售價:HK$
62.7
《
台风天(大吴作品,每一种生活都有被看见的意义)
》
售價:HK$
53.8
《
打好你手里的牌(斯多葛主义+现代认知疗法,提升当代人的心理韧性!)
》
售價:HK$
66.1
《
新时代硬道理 广东寻路高质量发展
》
售價:HK$
77.3
|
編輯推薦: |
本书以数据结构及算法、数据库技术、软件工程技术等为主要内容,面向新工科专业,如机器人工程、智能制造工程等非计算机专业学生介绍计算机软件基础技术。
|
內容簡介: |
本书以数据结构及算法、数据库技术、软件工程技术等为主要内容,介绍计算机软件基础技术。全书共分12章,其中第2-6章介绍线性表、栈和队列、树与二叉树、图、查找和排序等数据结构及算法相关知识,第7章介绍执行过程、存储、文件和设备等程序运行相关资源管理,第8章介绍数据库系统的组成、关系模型和关系数据库结构化查询语言SQL等数据库基础技术,第9-12章介绍系统分析、系统设计等软件工程技术相关知识。本书可作为高等院校机器人、机械工程、自动化等非计算机专业本科生、研究生的教材或教学参考书,也可以作为职业培训教材。
|
關於作者: |
张庆华,男,北京科技大学副教授。全国物流仓储设备标准化技术委员会委员,长期从事物流信息化、电子商务、MIS、移动终端等信息化、信息系统建设领域教学和科研工作,承担软件开发技术等课程20余年,先后在国内外学术刊物及会议上发表多篇论文,出版《物流信息系统开发技术基础》等教材10余部,主持信息化领域多项科研项目,其中获省部级科学技术奖1项。2010-2011赴美国加州大学洛杉矶分校进修。
|
目錄:
|
第1章概论
1.1数据、信息与数据处理
1.1.1数据的概念
1.1.2信息的概念
1.1.3数据处理
1.2计算机系统
1.2.1硬件系统
1.2.2软件系统
1.2.3计算机硬件与软件的关系
1.3计算机数据管理技术发展过程
1.3.1人工管理阶段
1.3.2文件系统阶段
1.3.3数据库系统阶段
1.3.4分布式数据库系统阶段
1.3.5信息系统发展历程
1.4计算机软件开发技术发展过程
1.4.1高级语言阶段
1.4.2结构程序设计阶段
1.4.3自动程序设计阶段
1.4.4面向对象程序设计
1.5算法
1.5.1算法的基本概念
1.5.2算法设计的基本方法
1.5.3算法复杂度
1.6小结
1.7习题
第2章递归
2.1递归定义
2.2递归应用
2.2.1阶乘
2.2.2累加
2.2.3排列
2.3小结
2.4习题
第3章表结构
3.1数据结构
3.1.1数据
3.1.2数据类型
3.1.3数据结构的定义
3.1.4数据结构的分类
3.2线性表
3.2.1线性表的定义和运算
3.2.2顺序存储的线性表
3.3栈
3.3.1栈的定义及基本运算
3.3.2顺序栈及其主要运算的实现
3.3.3栈与递归的应用
3.4队列
3.4.1队列的定义及其运算
3.4.2队列的顺序存储结构和基本运算的实现
3.5小结
3.6习题
第4章树与二叉树
4.1树的基本概念和术语
4.1.1树的定义
4.1.2树的基本术语
4.1.3树的表示
4.1.4树的逻辑结构特点
4.2二叉树
4.2.1二叉树的定义
4.2.2二叉树的性质
4.2.3二叉树的存储结构
4.3二叉树的遍历
4.3.1二叉树遍历的递归算法
4.3.2链表二叉树的建立
4.3.3二叉树遍历的非递归算法
4.3.4线索二叉树
4.3.5线索二叉树的描述
4.3.6二叉树的线索化
4.3.7在线索二叉树中检索结点
4.3.8遍历线索二叉树
4.4二叉排序树
4.4.1二叉排序树的定义
4.4.2二叉排序树的结点结构
4.4.3二叉排序树的插入
4.4.4二叉排序树的生成
4.4.5二叉排序树的查找
4.4.6二叉排序树的删除
4.5小结
4.6习题
第5章图
5.1图的定义及常用术语
5.1.1顶点和边
5.1.2有向图和无向图
5.1.3顶点邻接
5.1.4度
5.1.5子图
5.1.6路径与连通
5.1.7权和网
5.2图的存储
5.2.1邻接矩阵表示法
5.2.2邻接链表表示法
5.3图的遍历
5.3.1深度优先搜索法
5.3.2广度优先搜索法
5.4短路径
5.4.1单源短路径的概念
5.4.2单源短路径的计算方法
5.5拓扑排序基础
5.5.1拓扑排序的概念
5.5.2拓扑排序的条件
5.5.3拓扑排序的算法
5.6小结
5.7习题
第6章查找与排序
6.1查找
6.1.1顺序查找
6.1.2二分查找
6.2排序
6.2.1排序的基本概念
6.2.2插入排序
6.2.3选择排序
6.2.4交换排序
6.2.5希尔排序
6.3小结
6.4习题
第7章运行资源管理
7.1程序运行管理
7.1.1程序运行方式
7.1.2进程和线程
7.1.3线程的状态与调度
7.1.4基本同步机制
7.1.5死锁
7.2存储管理
7.2.1存储管理概述
7.2.2重定位技术
7.2.3存储管理方法
7.2.4覆盖和交换技术
7.2.5页式管理和段式管理
7.2.6虚拟存储技术
7.3文件系统
7.3.1文件系统的基本概念
7.3.2文件的组织和存取
7.3.3文件目录
7.3.4外存储空间管理
7.3.5文件的共享
7.4设备管理
7.4.1设备管理概述
7.4.2数据传送控制方式
7.4.3设备的分配
7.4.4设备无关性和缓冲技术
7.4.5设备驱动程序
7.5小结
7.6习题
第8章数据库技术
8.1数据库概述
8.2数据库系统的组成
8.2.1数据库
8.2.2数据库管理系统
8.2.3数据库应用
8.2.4数据库系统的分类
8.3关系数据模型
8.3.1关系模型
8.3.2关系运算
8.4SQL
8.4.1SQL概述
8.4.2查询
8.4.3SQL数据定义
8.4.4SQL数据操作
8.4.5SQL数据控制
8.5小结
8.6习题
第9章系统需求管理
9.1软件系统的生命周期
9.2系统调查与系统规划
9.2.1系统调查
9.2.2系统规划的方法
9.3软件需求
9.3.1软件需求的层次
9.3.2需求说明的特征
9.3.3需求获取
9.3.4需求验证
9.3.5需求管理
9.4小结
9.5习题
第10章系统分析
10.1结构化分析方法
10.1.1结构化分析方法概述
10.1.2业务流程图
10.1.3数据流程图
10.1.4数据字典
10.1.5处理逻辑的表达方法
10.1.6功能需求分析
10.1.7新系统逻辑模型
10.2面向对象方法与UML
10.2.1面向对象方法简介
10.2.2统一建模语言
10.3系统分析报告
10.4小结
10.5习题
第11章系统设计
11.1系统功能模块设计
11.1.1功能模块设计概述
11.1.2功能模块设计工具
11.2编码设计
11.3数据库设计
11.3.1数据库设计的要求及步骤
11.3.2数据存储结构规范化
11.3.3ER图
11.3.4概念结构设计
11.3.5逻辑结构设计
11.3.6数据库物理设计
11.4用户界面设计
11.4.1用户界面设计的一般原则
11.4.2用户界面设计过程
11.5系统设计报告
11.6小结
11.7习题
第12章系统实施
12.1信息系统的开发方式
12.2管理信息系统的项目管理
12.2.1项目角色与分工
12.2.2软件质量管理
12.3系统开发方法
12.4程序设计
12.4.1程序设计的性能要求
12.4.2程序设计的原则
12.4.3模块独立性
12.5软件测试
12.5.1软件问题类型
12.5.2软件测试类型
12.5.3软件测试的原则
12.5.4软件测试的方法
12.5.5测试用例的设计
12.5.6程序调试的步骤与内容
12.5.7系统操作说明书与技术报告
12.6系统安装
12.6.1数据的整理与录入
12.6.2系统切换
12.7系统维护与评价
12.7.1系统维护
12.7.2系统评价
12.8小结
12.9习题
参考文献
|
內容試閱:
|
学生在学习专业知识的过程中,有很多环节需要用到计算机软件相关技术:
(1) 学生在专业课学习过程中,需要借助计算机软件技术进行相关知识的学习。
(2) 在毕业设计和论文研究期间,需要采用计算机软件技术编写相关算法及开发应用系统。
(3) 毕业从事相关工作需要具有一定的软件技术基础。
在上述各个环节中,根据实际教学和科研工作、软件从业人员调研的结果来看,学生需要掌握的相关技术基础有:
(1) 信息逻辑处理技术。
(2) 软件开发工具语言技术。
(3) 数据库相关技术。
(4) 计算机网络技术。
(5) 软件工程技术。
(6) 软件相关技术。
上述相关技术中,信息处理基本算法、数据库技术、软件工程技术是计算机软件技术的基础,对学生学习相关专业知识、提高软件技术能力至关重要。
在多年本科生、硕士生教学和科研工作中,经常遇到这样一些问题: 学生无法很好地将所学的专业知识通过软件技术实现,开发出能满足实际需要的应用系统。其主要原因是计算机软件技术基础薄弱,尤其是非计算机专业的学生。因此在学习计算机软件技术的时候,迫切需要有一套适应面较广的、以非计算机专业人员为基础的实用性教材,以满足以下多种层次的要求。
(1) 以通俗易懂的语言讲解相关技术原理。
(2) 翔实的示例代码及运行结果解析,使学生通过运行代码,阅读解析,逐步了解和掌握相关算法。
(3) 以实际应用为教学目标,避免出现学生学习时无从下手、不会自己动手编写代码的现象,使学生具备独立开发代码的能力。
(4) 具有适应面广、基础性强的特点,能满足多种层次、多种类型的计算机专业本科学生的需要,特别是满足计算机应用型人才培养的需要。
为此,我们编写了适合非计算机专业的学生学习计算机软件技术的教材,帮助学生掌握相关计算机软件技术,为后续专业课的学习和就业提供有力支持。
本书以数据结构及算法、数据库技术、软件工程技术等为主要内容,面向机器人工程、智能制造工程等非计算机专业学生介绍计算机软件基础技术。本书共分12章,其中第2~6章介绍数据结构及算法,第7章介绍程序运行相关资源管理,第8章介绍数据库基础技术,第9~12章介绍软件工程技术相关知识,具体如下:
第1章概括性地介绍了信息处理、计算机技术和算法的基本概念,使学生对计算机软件技术有一个整体了解,为后续深入学习具体知识打基础。
第2章介绍了递归方法。递归方法是一种常用的计算方法,也是后续相关数据结构学习的基础。
第3章介绍了数据结构、线性表、栈和队列的基本概念和操作方法,是本书的基础部分。
第4章介绍了树与二叉树,包括二叉树的遍历和二叉排序树等的存储结构和操作算法。
第5章介绍了图的定义、存储、遍历和短路径等操作。相关知识在机器人行走路径优化等方面经常用到。
第6章介绍了查找与排序。查找与排序是常见的数据处理需求,这里重点介绍了常用的排序算法。
第7章介绍了程序运行过程、存储、文件和设备等软件运行资源管理,其中程序运行资源包括程序运行过程涉及的进程、线程的状态与调度、同步等知识,是进一步学习并行计算、大规模并发解决方案的基础。
第8章介绍了数据库技术,包括数据库系统的组成、关系模型和结构化查询语言(SQL),其中关系模型和SQL是本章的学习重点。
第9章介绍了软件需求管理相关知识,这是软件系统项目中的一个极其重要的工作环节,是系统分析和系统设计及实现的基础。
第10章介绍了系统分析中的结构化分析方法和面向对象分析方法相关知识,其中结构化分析方法应用非常普遍,是本章的学习重点。
第11章介绍了信息系统中的功能模块设计、编码设计、数据库设计等系统设计知识,其中数据库设计是本章的学习重点。
第12章介绍了软件系统实施相关知识,包括信息系统的开发方式、信息系统的项目管理、系统开发方法、程序设计和软件测试等软件项目实施阶段的内容。
本书从基本算法设计方法入手,系统、全面地介绍表、树、图、查找、排序等基本数据结构及算法,给出了C 语言程序示例,读者可以结合程序的跟踪调试,考察过程结果,进而理解和掌握相关算法。书中的代码均通过多个专业学生试用,根据学生对相关知识的理解程度调整了语言文字和示例。
本书各章都配有练习题,其中,部分可选作上机练习题。大多数习题都紧扣正文中的教学内容。
本书使用对象是非计算机科学与技术相关专业的本科生、硕士生以及相关技术人员。为了便于自学,在编写过程中,力求语言简练、通俗易懂、由浅入深,着力挑选简单明了、实用性强的示例以阐明基本概念和基本算法。
感谢王欢、刘徐畅、吴光谱、王小童、李悦、张宁波、贾文哲、李苓苓、王世洲、林坤、陈明杰、张海啸、李晶、田彦荣、张铠、沙桂东等对本书代码验证、文字录入和图表绘制等相关工作给予的支持。
虽经作者再三努力,书中难免有疏漏之处,恳请读者指正,更请同行不吝赐教,提出宝贵意见与建议,不断对本书进行完善。
作者2021年4月于北京
|
|