新書推薦:

《
水库式经营
》
售價:HK$
61.6

《
哲学家的最后一课
》
售價:HK$
57.8

《
进入全球公共视域的清帝国:欧洲文献里的中国邸报
》
售價:HK$
139.2

《
微积分学教程(第二卷)(第8版)
》
售價:HK$
116.8

《
16至20世纪知识史中的流亡者与客居者
》
售價:HK$
103.8

《
家庭经济学:用经济学视角解读家庭关系(诺贝尔经济学奖获得者加里·S. 贝克尔全新力作)
》
售價:HK$
81.4

《
人间词话汇编汇校汇评(新)
》
售價:HK$
54.8

《
王名扬全集:美国行政法(上下) 王名扬老先生行政法三部曲之一
》
售價:HK$
173.8
|
編輯推薦: |
本书是将教学研究、课程建设与能力培养相结合的具体体现,也是作者多年来探索课程教学改革与人才培养的结晶。本教材按照“新工科”建设思想,构建体现计算机学科基础特性、凸显计算机学科方法、突出计算机新技术应用,形成本书特色,实现以下教学目标。
(1)抓住实质,突出导论课程内涵:以计算机科学的形成发展和前沿技术为课程视野,全面描述计算机学科的知识体系、学科形态、学科方法、经典问题等,并将学科形态和计算思维贯穿于课程教学的全过程。
(2)创新结构,构建计算思维体系:以计算思维为引导,以学科形态为纽带,以能力培养为目标,创新性地构建体现学科基础特性、突出计算思维方法、形成涵盖计算学科主领域的进阶式-模块化知识体系结构。
(3)问题引导,激发学生求知欲望:以“问题引出”导入所要探讨的问题,使学生在学习过程中带着问题寻找答案,怀着好奇去探索奥秘,从而消除学习中的畏难情绪,调动学习的积极性,激发学习的创造性。
|
內容簡介: |
本书参照国际电气与电子工程师学会计算机协会和美国计算机协会(IEEE-CS&ACM)计算学科教程(CC2005)和中国计算机科学与技术学科教程(CCC2002)编写,并按照“新工科”(新概念、新体系、新结构、新模式、新质量)建设思想,构建体现计算机学科基础特性(基本概念、基本方法、基本技术),凸显计算机学科方法(典型方法、学科形态、计算思维),突出计算机新技术(人工智能、虚拟现实、移动互联网、物联网、云计算、大数据)应用的课程知识体系。本书共10章,涵盖了计算机学科知识主领域的全部内容。 本书从学科认知科学化、系统化和逻辑化出发,站在学科的高度阐述计算机科学与技术知识,注重学科知识体系的完整性、逻辑性、创新性和时代性,具有结构新颖、层次分明、由浅入深、循序渐进的特点。 本书可作为高等院校计算机类、电子信息类和电气信息类“计算机(科学)导论”课程教材,也可作为相关专业的教师和从事计算机科学与技术工作的工程技术人员的参考书。
|
目錄:
|
绪论——课程导学 1
0.1 课程教学定位 1
0.2 课程教学思维 2
0.3 课程知识结构 4
0.4 课程教学辅导 6
基本概念——计算机与计算思维
第1章 计算机科学概述 10
1.1 人类计算工具的进步 10
1.1.1 手工时代 10
1.1.2 机械时代 12
1.1.3 机电时代 15
1.1.4 电子时代 16
1.2 计算机科学体系的形成 19
1.2.1 布尔提出的逻辑代数 19
1.2.2 香农提出的逻辑电路 19
1.2.3 维纳提出的计算机设计原则 20
1.2.4 图灵提出的图灵机和图灵测试 20
1.2.5 冯·诺依曼提出的EDVAC 23
1.3 基于Neumann结构的现代计算机 25
1.3.1 计算机的结构组成 25
1.3.2 计算机的主要特点 26
1.3.3 计算机的基本性能 27
1.3.4 计算机的主要应用 28
1.4 突破与超越Neumann结构 31
1.4.1 突破Neumann的体系结构 31
1.4.2 突破Neumann的组成结构 34
1.4.3 超越Neumann的体系结构 35
本章小结 37
习题1 37
第2章 计算机学科体系 39
2.1 计算机学科体系的构建 39
2.1.1 科学与学科的概念 39
2.1.2 计算作为一门学科 40
2.1.3 CC2005学科体系 42
2.1.4 CCC2002学科体系 45
2.2 计算机学科方法论 47
2.2.1 计算机学科方法论概念 47
2.2.2 计算机学科的3个形态 48
2.2.3 计算机学科的核心概念 49
2.2.4 计算机学科的典型方法 50
2.3 计算机学科的数学方法 52
2.3.1 数学方法及其作用体现 52
2.3.2 构造性数学与证明方法 54
2.3.3 计算机学科的根本问题 56
2.4 计算机学科的经典问题 57
2.4.1 理论意义上的不可计算问题——图论问题 57
2.4.2 现实意义上的不可计算问题——计算的复杂性 59
2.4.3 理论意义上的可计算问题——计算机智能问题 63
2.4.4 现实意义上的可计算问题——并发控制问题 65
本章小结 66
习题2 67
第3章 计算思维及其作用体现 68
3.1 计算思维及其本质特性 68
3.1.1 人类思维的类别 68
3.1.2 计算思维的概念 71
3.1.3 计算思维的本质 72
3.1.4 计算思维的特性 73
3.2 计算思维的问题求解 75
3.2.1 问题求解的数学建模 75
3.2.2 问题求解的基本策略 76
3.2.3 问题求解的过程抽象 78
3.3 计算思维与计算机学科 82
3.3.1 计算思维本质与学科形态的关系 82
3.3.2 计算思维在计算机学科中的体现 84
3.4 计算思维的学科作用与能力培养 89
3.4.1 计算思维与计算机教育相互促进 89
3.4.2 计算思维有助于跨越专业鸿沟 90
3.4.3 计算思维有助于其他学科发展 91
3.4.4 计算思维能力培养的基本策略 93
本章小结 95
习题3 95
基本方法——机器计算的基本思维
第4章 数据表示的基本思维 98
4.1 数制及其转换——“人机兼容”的基本思维 98
4.1.1 进位计数制 98
4.1.2 数制之间的转换 100
4.2 数值数据的编码表示——“语义符号数值化”的基本思维 104
4.2.1 整型数的编码表示 104
4.2.2 实型数的编码表示 109
4.3 字符数据的编码表示——“字符信息数字化”的基本思维 111
4.3.1 西文字符的编码表示 111
4.3.2 汉字字符的编码表示 113
4.3.3 综合实例——字符处理 116
4.4 逻辑数据的编码表示——“逻辑符号数字化”的基本思维 117
4.4.1 逻辑代数概念 117
4.4.2 逻辑代数运算 118
4.5 多媒体数据的编码表示——“动态信息数字化”的基本思维 120
4.5.1 多媒体的基本概念 120
4.5.2 音频数字化的编码表示 121
4.5.3 图像数字化的编码表示 122
4.5.4 视频数字化的编码表示 124
4.5.5 计算机动画简介 125
本章小结 126
习题4 126
第5章 计算系统的基本思维 128
5.1 计算系统的基本概念——“系统组成”的基本思维 128
5.1.1 计算机硬件系统 128
5.1.2 计算机软件系统 129
5.1.3 计算机操作系统 130
5.1.4 软件与硬件的关系 133
5.2 处理器系统——“控制执行”的基本思维 134
5.2.1 处理器的结构组成 134
5.2.2 计算机指令系统 136
5.2.3 操作系统对处理器的管理 137
5.3 存储器系统——“存储优化组合”的基本思维 141
5.3.1 内存储器 141
5.3.2 外存储器 143
5.3.3 存储体系 144
5.3.4 操作系统对存储器的管理 146
5.3.5 综合实例——计算机的工作过程 148
5.4 文件管理系统——“长治久安”的基本思维 150
5.4.1 文件与文件系统 150
5.4.2 文件组织与结构 151
5.4.3 文件目录与目录结构 152
5.5 总线系统与输入输出系统——“组织与协调”的基本思维 154
5.5.1 总线系统 154
5.5.2 输入输出设备 155
5.5.3 输入输出接口 157
5.5.4 操作系统对I/O的管理 158
本章小结 160
习题5 161
第6章 程序设计的基本思维 162
6.1 程序设计概念——“问题抽象”的基本思维 162
6.1.1 程序设计与问题求解 162
6.1.2 程序设计的基本抽象 164
6.2 程序设计语言——“语言抽象”的基本思维 165
6.2.1 程序设计语言的演化 165
6.2.2 程序设计语言的构成 169
6.2.3 计算机源程序的翻译 173
6.3 程序设计方法——“方法抽象”的基本思维 176
6.3.1 面向过程程序设计方法 176
6.3.2 面向对象程序设计方法 178
6.3.3 程序与软件的关系 181
6.4 软件工程方法——“过程抽象”的基本思维 181
6.4.1 软件工程概念 182
6.4.2 软件生存周期 183
6.4.3 软件开发模型 183
6.4.4 软件开发方法 186
本章小结 188
习题6 189
第7章 算法构建的基本思维 190
7.1 算法——问题求解的核心 190
7.1.1 算法的基本概念 190
7.1.2 算法的设计要求 191
7.1.3 算法的复杂性 192
7.1.4 算法的描述方法 194
7.2 数值数据求解——算法策略 196
7.2.1 穷举算法 196
7.2.2 回溯算法 197
7.2.3 递推算法 199
7.2.4 迭代算法 200
7.2.5 递归算法 201
7.2.6 分治算法 202
7.2.7 贪心算法 203
7.2.8 动态规划 204
7.3 非数值数据处理——数据结构 205
7.3.1 线性表结构 205
7.3.2 栈结构 207
7.3.3 队列结构 208
7.3.4 树结构 208
7.3.5 图结构 210
7.4 数据元素操作——排序和查找 212
7.4.1 排序算法 213
7.4.2 查找算法 217
本章小结 218
习题7 219
基本技术——数据共享与前沿技术
第8章 数据库技术 222
8.1 数据库技术概述——抽象(Ⅰ) 222
8.1.1 数据与信息 222
8.1.2 数据库 224
8.1.3 数据库管理系统 225
8.1.4 数据库系统 226
8.2 数据模型——抽象(Ⅱ) 228
8.2.1 数据模型概念 228
8.2.2 概念数据模型 230
8.2.3 关系数据模型 232
8.2.4 关系数据模式 234
8.3 关系数据库——理论 236
8.3.1 关系代数查询运算 236
8.3.2 关系数据查询优化 240
8.3.3 关系模式的规范化 241
8.3.4 关系数据的一致性 242
8.4 构建数据库应用系统——设计 243
8.4.1 数据库应用系统设计要求 244
8.4.2 数据库应用系统设计过程 245
本章小结 249
习题8 250
第9章 计算机网络技术 251
9.1 计算机网络概述——抽象 251
9.1.1 网络的基本概念 251
9.1.2 网络的基本类型 252
9.1.3 OSI/RM体系结构 254
9.1.4 TCP/IP体系结构 255
9.2 网络数据传输——理论 256
9.2.1 网络数据通信 257
9.2.2 数据传输方式 258
9.2.3 多路复用传输 259
9.2.4 数据调制编码 260
9.2.5 数据分组交换 262
9.3 网络结构组成——设计(Ⅰ) 262
9.3.1 网络的拓扑结构 263
9.3.2 网络的逻辑结构 265
9.3.3 计算机网络互连 266
9.4 Internet应用——设计(Ⅱ) 268
9.4.1 Internet的IP地址 268
9.4.2 Internet的域名系统 269
9.4.3 Internet提供的服务 271
9.5 信息安全技术——设计(Ⅲ) 272
9.5.1 防病毒技术 273
9.5.2 防黑客技术 274
9.5.3 防火墙技术 274
9.5.4 信息加密技术 276
9.5.5 数字认证技术 279
本章小结 280
习题9 280
第10章 计算机前沿技术 282
10.1 人工智能技术 282
10.1.1 人工智能的基本概念 282
10.1.2 人工智能的关键技术 284
10.1.3 人工智能的技术应用 285
10.2 虚拟现实技术 287
10.2.1 虚拟现实的基本概念 288
10.2.2 虚拟现实的关键技术 291
10.2.3 虚拟现实的技术应用 291
10.3 移动互联网技术 293
10.3.1 移动互联网的基本概念 293
10.3.2 移动互联网的关键技术 294
10.3.3 移动互联网的技术应用 295
10.4 物联网技术 296
10.4.1 物联网的基本概念 297
10.4.2 物联网的关键技术 298
10.4.3 物联网的技术应用 299
10.5 云计算技术 301
10.5.1 云计算的基本概念 301
10.5.2 云计算的关键技术 303
10.5.3 云计算的技术应用 304
10.6 大数据技术 305
10.6.1 大数据的基本概念 305
10.6.2 大数据的关键技术 307
10.6.3 大数据的技术应用 308
本章小结 308
习题10 309
参考文献 311
- VI -
计算机科学与计算思维导论
- VII -
目??录
|
內容試閱:
|
“计算机科学与计算思维导论”是计算机科学、计算机工程、软件工程、信息技术等分支学科的学生全面了解计算机学科基本概貌的引导性课程,也是电子信息类专业重要的基础课程。
在计算机教育史上,有关学科综述性引导课程的构建一直受到各国计算机学界的高度重视。IEEE-CS&ACM计算学科教程(Computing Curricula 2001,CC2001)报告指出:整个学科综述性引导课程的构建有助于推动学科的发展,鼓励各学术团体及教师个人从事这方面的研究,以适应计算机科学技术飞速发展的需要。因此,自CC2001发布以来,世界各国高校都非常重视计算机学科“引导”课程的构建,纷纷开设了“计算机(科学)导论”“计算机(科学)概论”一类的课程。为此,笔者经历了漫长而不懈的探索,编写且多次再版了《计算机科学导论》。
随着计算机学科教育研究探索的深入,人们提出了“计算思维”(computational thinking),它是人类求解问题的一条有效途径,是一种分析问题、解决问题的过程和思想。如何将计算思维融入计算机学科体系中,不仅受到计算机相关专业从教者的高度关注,而且得到学术团体和门的高度重视。2007年,美国国家科学基金会(National Science Foundation of America,NSF)将“计算思维能力”(computational thinking ability)培养列为“大学计算机教育重生的途径计划”的核心。2012年,我国要求大学计算机教育的总体建设目标应该定位在“普及计算机文化,培养专业应用能力,训练计算思维能力”上,并明确定位大学计算机课程是与数学、物理等同地位的重要基础课程。
面对这种新思想和新要求,如何将计算思维引入计算机学科的引导课程及其知识体系中,即如何构建基于计算思维的综述性引导课程,如何进行课程定位,应该起到什么作用,应该达到什么目的等,这些既是需要认真思考的问题,也是必须首先明确的问题。为此,笔者一直在对计算机学科引导课程的构建进行深入探索,并在探索中不断提高构建该课程的认识。
(1)基于计算机学科形态的“计算机科学导论”的思想方法是抽象、理论、设计,而计算思维的本质是抽象与自动化,如何将学科形态与计算思维相融合,并充分发挥学科形态与计算思维在人才培养中的引导作用,是计算机学科引导性课程的核心,也是本课程的创新和突破点。
(2)基于计算机学科体系的“计算机科学导论”不同于“大学计算机基础”,虽然它们都是计算机学科的入门课程,但课程性质完全不同。“大学计算机基础”是非计算机专业的公共基础课程,为专业课程服务,课程构建的实质是对计算机功能的工具性认识;而“计算机科学导论”是计算机类专业全程教学内容的引导性课程,课程构建的实质是寻求一种统一的思想来认知计算机学科,即站在学科的高度对计算机学科进行科学化和系统化的描述,并注重学科发展的动态性和知识传授的有效性。由于计算思维是运用计算机科学的基础概念求解问题、设计系统和理解人类行为的科学方法,将计算思维融入计算机学科的知识体系中,会极大地加深对计算机科学及其学科的认识。
(3)作为计算机学科的引导课程,应承担起一种“承前启后”的作用。所谓“承前”,就是介绍计算机的形成与发展历程,让学生了解计算机学科的内涵及其来龙去脉,并从中受到启迪;所谓“启后”,就是描述计算机学科的知识体系,让学生懂得应该掌握哪些知识、具备什么样的知识结构和能力,以便在学习过程中明确目标,把握现在,放眼未来。
(4)作为计算机学科的通识课程,应涵盖计算机学科教育的各个方面。通过本课程的学 习,透视学科体系、展示学术魅力、掌握学习方法、培养计算思维、传承计算文化、弘扬科学精神、激发拼搏意识,燃起探索热情。
随着对该课程教学研究与探索的深入,围绕“教什么”和“怎样教”以及“计算思维”与“学科形态”内在关联等问题,我们不断更新课程建设理念,不断调整课程知识结构,不断寻求突破与创新,构建计算机科学与计算思维相融合的课程体系。本书就是上述思想的具体体现,并力图实现如下教学目标。
(1)抓住实质,体现导论课程内涵。作为导论课程,应充分体现“导”与“论”的真实内涵。
所谓“导”,就是站在学科的高度俯瞰计算机学科全貌,引导学生全面了解计算机学科的知识体系、学科形态、科学方法、根本问题、经典问题等,而不是深入探讨分支细节,避免“只见树木,不见森林”。许多具体问题可以“知其然,不知其所以然”,详细内容在后续相关课程中讨论。
所谓“论”,就是基于学科形态的方法论。本书以“计算机学科是一门计算的学科,计算机系统是一个离散化系统,计算机方法是一种形式化方法”作为计算机学科方法论的立足点和着力点。
计算机学科方法论是本课程的核心。事实上,教会学生某一知识或技术远不如教会学生掌握分析问题和解决问题的方法重要,正所谓“授人以鱼,不如授人以渔”。这既是“计算机科学与计算思维导论”与“大学计算机基础”及其他课程的本质区别所在,也是本书(本课程)的教学目标所在。
(2)创新结构,构建计算思维体系。本书以计算思维为引导,以学科形态为纽带,以能力培养为目标,创新性地构建了计算思维方法与计算学科形态相融合的知识体系。这样,既体现了计算思维与学科形态在课程教学中的引导作用,又为学生创造了更多计算思维的实践机会,着实培养学生运用计算思维分析问题、解决问题的方法和能力。构建本课程知识体系的指导思想是体现学科基础特性、突出科学思维方法、涵盖学科知识主领域的“进阶式-模块化”知识体系结构。
基本概念(第1~3章):计算机科学概述,计算机学科体系,计算思维及其作用体现;
基本方法(第4~7章):数据表示的基本思维,计算系统的基本思维,程序设计的基本思维,算法构建的基本思维;
基本技术(第8~10章):数据库技术,计算机网络技术,计算机前沿技术。
因而,本书结构新颖、层次分明、由浅入深、循序渐进、逻辑性强、远近兼顾、便教便学。
(3)启迪思维,揭示计算学科特性。本书力图通过计算机的形成与发展,揭开计算机科学的神秘面纱;通过硬件子系统与操作系统管理相结合,揭示计算系统的工作机制;通过数据表示、计算系统、程序设计、算法构建,揭示计算思维的本质——抽象与自动化;通过数据库技术、网络技术及新技术应用,揭示计算学科的形态——抽象、理论、设计。从而使得思维随着知识的贯通而形成,能力随着思维的形成而提高,并通过深入分析与比较,使学生认识到构建计算思维本质与计算学科形态的目标是一致的,其宗旨是寻找通用的方法,处理类似的问题。以此启迪学生去科学思考,为日后在专业领域中能有所发现、有所突破、有所创新奠定基础。
(4)问题引导,激发学生求知欲望。本课程的重要意义是使学生对计算机学科的各知识领域产生浓厚的学习兴趣和强烈的求知欲,同时又有太多的疑惑和不理解,非常渴望了解其中的科学道理,这是学好本专业的源动力,正所谓“知之者不如好之者,好之者不如乐之者”。本书各章均以“问题引出”导入所要探讨的内容,使学生在学习过程中有的放矢,带着问题去寻找答案,怀着好奇心去探索奥秘,从而消除学习中的畏难情绪,调动学习的积极性,激发学习的创造性。
(5)多措并举,强化全程能力培养。计算机学科的特点是知识面宽、实践性强、软硬件技术更新换代快,所以既要重视理论学习能力的培养,也要重视实践能力的培养,更要重视自我提高能力的培养。为此,还编写了与本书配套的《计算机科学与计算思维导论学习辅导》,其中包含实验指导的内容,形成融理论教学、学习辅导和实验指导三位一体的教学环境,从而使学生在潜移默化中意识到能力培养的全面性、知识更新的重要性、自我提升的必要性。
总之,无论是课程建设理念,还是知识结构;无论是教学内容,还是思维方法,都力求体现创新性、规范性、先进性和示范性,并在传授知识的同时,弘扬中华文化对人类社会发展的贡献。
教材是课程建设的真实体现,先进的课程建设理念和设计思想,终需要通过教材来组织与实施。同时,教材是课程教学的基本依据,是教学研究、探索和改革的载体,它容纳了教学目标和教学内容,明确了教学过程和教学方法,体现了教学理念和教学思想。因此,合理定位本课程的教学内容,形成科学的知识体系和稳定的知识结构,使之成为重要的引导性课程,是“计算机科学导论”课程教学改革的主要目标;根据课程的作用、地位和特点,以计算思维能力培养为切入点,是深化该课程教学改革、提高课程品质和教学效果的重要任务。本书是将教学研究、课程建设与能力培养相结合的具体体现,也是作者多年来探索课程教学改革与人才培养的结晶。
本书由李云峰、李婷和丁红梅编著,李云峰负责统稿,姚波、曹守富等老师参与了课程资源的建设工作。
在本书的编写过程中,参阅了大量近年来出版的国内外同类优秀教材,并从中吸取了大量宝贵营养,在此谨向这些著作者表示衷心感谢!
由于本书在教学思想、知识体系、内容组织等方面都是一种新的探索,因此难免存在疏漏、不妥甚至错误之处,敬请读者批评指正。
作 者????
2023年1月
- II -
计算机科学与计算思维导论
- III -
前??言
|
|