和同类的教材相比,本书的特点在于以一个核心、三条纲领来组织教学内容。计算机的核心功能是数据处理,计算机科学要提供数据表示和数据加工表示的理论、方法、技术,并*终在计算机系统上实现。
全书共分7章,内容包括认识计算机和计算机科学、计算机系统组成、计算机软件系统、计算机通信与网络、数据表示方法、数据加工表示方法、计算学科的知识领域。
按照本书的体系,初学者容易理解在后续课程中展开的专业概念,并关注专业课程之间的内在关联。
本书既适合作为高等学校的教材,也适合有兴趣了解计算机科学概貌的读者阅读。
本书是作者在多年教学实践的基础上编写而成的。自*版出版以来,本书已被多所高校选作教材,取得了很好的教学效果。本次再版,作者增加了有关信息安全的内容,以便更好地满足教学需求。
出
版 说 明
我国高等学校计算机教育近年来发展迅猛,应用所学计算机知识解决实际问题,已经成为当代大学生的必备能力。
时代的进步与社会的发展对高等学校计算机教育的质量提出了更高、更新的要求。现在,很多高等学校都在积极探索符合自身特点的教学模式,涌现出一大批非常优秀的精品课程。
为了适应社会需求,满足计算机教育的发展需要,清华大学出版社在大量调查研究的基础上,组织编写了本套教材。本套教材从全国各高校的优秀计算机教材中精挑细选了一批很有代表性且特色鲜明的计算机精品教材,把作者对各自所授计算机课程的独特理解和先进经验推荐给全国师生。
本套教材特点如下。
(1)
编写目的明确。本套教材主要面向普通高校的计算机专业学生,使学生通过本套教材,学习计算机科学与技术方面的基本理论和基本知识,接受应用计算机解决实际问题的基本训练。
(2)
注重编写理念。本套教材的作者均为各校相应课程的主讲教师,有一定的经验积累,且编写思路清晰,有独特的教学思路和指导思想,其教学经验具有推广价值。本套教材中不乏各类精品课程的配套教材,并力图把不同学校的教学特点反映到每本教材中。
(3)
理论知识与实践相结合。本套教材贯彻从实践中来到实践中去的原则,书中许多必须掌握的理论都将结合实例讲述,同时注重培养学生分析、解决问题的能力。
(4)
易教易用,合理适当。本套教材编写时注意结合教学实际的课时数,把握教材的篇幅。同时,对一些知识点按照教育部教学指导委员会的最新精神进行合理取舍与难易控制。
(5)
注重教材的立体化配套。大多数教材都将配套教学课件、习题及其解答、实验指导、教学网站等辅助教学资源,方便教学。
随着本套教材的陆续出版,我们相信能够得到广大读者的认可和支持,为我国计算机教材建设和计算机教学水平的提高,以及计算机教育事业的发展作出应有的贡献。
清华大学出版社第3版前言
众所周知,计算机技术和应用的发展日新月异,引起人类社会变革的广度和深度是空前的,可能也是绝后的。但是,不是所有人都了解到,计算机系统的核心基础原理几十年来并没有发生根本的变化。所以,当这本以大学一年级学生为对象的专业入门教材再版时,全书框架和主要内容并没有改变,只是对介绍计算机技术和应用的段落做了与时俱进的增补。计算机的安全保障措施日益重要,因此增加了7.3节。
根据作者的教学经验,这本教材对不同程度的学生班级都适合。学生的领悟能力越强,教师可以讲得越具体;反之可以讲得粗略一些,但课程体系仍应该保持完整。不必期待学生对教材里出现的,或者老师讲授到的每个专业概念都完全理解,毕竟这是以后几十门专业课的任务。计算机科学导论的授课目的在于使学生大致了解今后四年要学习的专业内容。更重要的是,希望学生能够把握各门专业课程之间的内在联系。这一点不会在哪一门后续的专业课程里再刻意阐述了。
黄思曾2017年7月于康乐园第2版前言
第1版出版后,不时会有教师给我发邮件,觉得这本书很适合用做本科生的教材,向我要教学大纲、教学进度表、考核大纲和电子课件以作参考,我很乐意和同行们互相交流。这本书从来就不以计算机科学导论作为目标。它不过是笔者从许多年讲授计算机科学导论课程的过程中提炼出来的一本讲义而已。这是在书名中刻意加上教程二字的原因。
本课程面对一年级新生,通常只安排四五十学时。对任教教师来说,挑战在于选材、组织和演绎。讲得太写意或者太工笔都不行,太专业或者太不专业也不行。
在笔者的教学生涯中,计算机科学导论教材经历了几次变化。最早一批着眼于计算机入门操作和应用,类似今天仍然常见的以应用基础或文化基础来冠名的那些书;后来的一批有点全面介绍学科内涵的味道了,多以浓缩手法把有关领域内容写成一章一节;再往后,国内外开始出现以叙述纲领统率内容的著述,如以算法作为纲领贯穿教材,比如笔者用数据表示、数据加工表示、计算机系统三条线索来展开内容。
近年来,这个题材的新作继续出现,董荣胜的《计算机科学导论思想与方法》一书站在学科思想、方法这个较高的层面来介绍学科,以此给学生提供对学科的认知基础,著述自成一格。这本书值得有关专业高年级本科生或者低年级研究生,甚至计算机科学导论课程的任教教师一读。
从院校总体上看,一年级大学生的逻辑思维能力和对计算机的了解程度会参差不齐。不论教师选择什么样的叙述角度和层次,都受制于面对的菜鸟们的平均接受能力,并非能够天马行空的。教师传道、授业、解惑之际,一定要顾及受众的感受,否则教师自我感觉讲得天花乱坠,而学生的反应却是不知所云。
这次修订增写了1.4节和第7章。希望学生在导论性课程中对学科能够有更加全面的认知。大部分增加的内容可作为学生的阅读材料,但是建议把7.2节列入教学计划。关于社会和职业的问题只由教师讲授,效果恐怕不会太好,应该设计更加生动的教学环节。
黄思曾2010年8月于康乐园第1版前言
计算机科学导论是大多数高等院校计算机科学与技术类专业学生必修的专业课程。课程讲授和计算机系统、计算机科学有关的基本概念,使学生对本专业的核心知识有全面的、概要的认识。
本课程一种典型的教学安排是每周课堂讲授3学时,14周共42学时。在较短时间内要完成覆盖面很广、内容极为丰富的专业知识教学,又要使一年级学生能够大致理解,关键在于:
要建立一个课程讲授的结构体系;
要把握好内容广度和深度的关系;
要采用深入浅出的叙述风格。
笔者在中山大学计算机科学系任教多年,20世纪80年代负责开设本课程之后,一直是本课程的主讲教师。多年的教学实践中,笔者设计以一个本质核心,三条内容纲领来组织本门课程,使学生能够在短短的十几周里对计算机系统和计算机科学有入门性的、较全面的认识。
一个本质核心是指计算机的数据处理功能。
计算机是一种数据处理机器,计算机科学是使计算机完成各行各业、形形色色数据处理任务所需要的理论、方法和技术的知识集合。
三条内容纲领是:
(1) 数据的分层表示方法学,其表示层次:
现实世界的数据对象;
数据结构和信息结构层;
程序设计语言层;
机器层;
物理层。
(2) 数据加工的分层表示方法学,其表示层次:
数据处理问题;
解题模型;
算法层;
程序设计层;
机器程序层;
物理层。
(3) 计算机系统的构成(数据和数据加工表示方法的最终载体):
硬件系统;
软件系统;
网络系统。
本教材按照上述纲领展开,包含了后续各门计算机类专业课程的主要概念,从而使学生对计算机科学的内容及其内在的关联有全面、清晰、概要的认识。
教学实践表明,本课程的学习能够激发学生提出思考和问题。课程结束后,学生的疑问通常会比课程开始前还要多。这是好事,说明本课程为学生后续的专业学习奠定了良好的基础,真正起到了导论应有的作用。
历届学生都表示,通过本课程的学习他们清晰地了解到今后几年里要学什么,毕业之后会干什么,心里开始踏实了。说明本课程还应该担负起学生专业教育的作用。
由于计算机技术发展十分迅速,加上作者水平所限,书中难免有错误和不足之处,期望读者在使用过程中给予指正。
黄思曾2007年5月于康乐园