“计算机导论”是计算机学科一门重要的入门课程,是学生了解学科概貌,理解学科核心概念,领会学科内涵,掌握学科各课程之间联系和特点的一门重要基础课程。本书致力于集思维性、方法性、知识性和实时性于一体,以训练良好的计算思维意识和方法、建立计算机科学的整体框架为主要目标,为学生后续课程的学习奠定坚实的基础。
本书的编写遵循以下3个原则:
(1) 突出计算思维的培养。本书结合国际国内计算机科学课程大纲体系,以计算思维的培养为主线,自始至终凝练贯穿计算机学科核心概念点,不断地引导学生体验和领悟计算思维。
(2) 注重经典理论与前沿研究的结合。本书不仅注重计算科学发展历史中的经典问题和理论,而且注重融合计算机学科的最新研究进展和计算思维在跨学科领域的最新应用,从不同层次和角度体现计算思维和计算机科学的核心概念和问题。
(3) 内容安排深入浅出,由浅入深。本书围绕计算、抽象、算法与形式化、程序、问题求解和计算思维等概念,从与学生易于产生共鸣的主题如计算机的发展、计算机对社会的影响、数据表示及存储、计算机系统工作原理、操作系统和计算机网络等入手,由浅入深地过渡到较抽象的内容,如问题求解、计算机领域经典问题和计算理论等,引导学生在掌握知识的过程中,领会计算思维的本质和理念。
本书具体包括4部分内容: 文化与社会篇、系统基础篇、计算理论篇、知识体系和方法论篇。
第1篇文化与社会篇,包括第1和第2章。
第1章主要讲述计算工具的发展、计算机的发明和发展、计算模式的演变,使学生了解对计算机发展起到重要推动作用的技术,从整体上把握计算机的发展脉络,从而以发展的眼光看待计算机。
第2章首先介绍为计算机的发展做出不懈努力的著名IT公司、科学家和重要的学术组织,激发学生的学习兴趣; 然后讲述计算机发展对现代社会的影响如知识产权、数字版权、隐私、安全等社会问题,以及计算机专业人员应具备的职业素养,使学生了解计算机在造福人类的同时,也可能给人类带来灾难,教育学生遵守职业道德规范和法律准则。
第2篇系统基础篇,包括第3~5章。
第3章主要讲述数据的表示,分别从现实世界层、信息世界层、高级语言层、机器层和物理层等几个层次介绍数据的表示,使学生领会不同层次如何对计算机要处理的数据进行抽象和表示。
第4章重点叙述计算机系统的工作原理、硬件与软件的关系等相关知识,从计算机的主要硬件组成、软件、操作系统与文件、软件开发基础知识等方面对计算机系统进行介绍。
第5章讲述计算机网络方面的知识,主要从计算机网络(Network)、因特网(Internet)和万维网(Web)3个层面介绍网络分类、工作原理、因特网技术和主要应用以及Web核心技术。
第4和第5章的内容结合紧密实际生活中的计算机应用,不仅可以兼顾计算机能力和素质不同的学生,而且可与学生产生共鸣。通过这两章的学习,可以解决困扰他们很长时间的一些疑惑和问题。
第3篇计算理论篇,包括第6~8章。
第6章主要介绍计算理论、算法理论和程序设计的相关知识,为学生进行后续的“高级语言程序设计”、“算法设计与分析”等课程的学习奠定基础。
第7章主要讲述问题求解的过程和计算机领域的典型问题,将对图论问题、算法复杂性问题、机器智能问题、并发控制和分布式计算等经典问题进行分析讨论。学生通过本章的学习,不仅有助于深刻地理解计算机学科中一些关键问题的本质,而且对学科的进一步深入研究和发展具有十分重要的促进作用。
第8章围绕计算思维,讲述计算学科引入的最新技术和最新学科交叉案例,如物联网、群体智慧、服务计算,以及计算社会、计算生物学、计算社会学等“计算+X”的新兴交叉学科,引导学生进一步体验计算思维。
第4篇知识体系和方法论篇,包括第9和第10章。
第9章主要介绍计算机专业理论知识体系和实践教学体系,第10章着重讲述计算机学科的核心概念和方法论。通过这两章的学习使学生尽早了解完整的专业知识体系,较深入地了解计算机学科的根本问题、核心概念和方法论,在后续课程中,自觉搭建整个知识体系,循序渐进地认识和感悟计算机学科,避免“只见树木,不见森林”。
编者2015年12月