基本信息

 

                 程向前

 

主要工作:大学计算机课程教学与研究,负责计算机网络双语教学、少年班《计算概论》课程改革。 已合作出版教材及教辅资料12本,独立出版教材4本。发表教学研究和改革论文12篇(其中8篇为第一作者)。

联系方式

电子邮件:xqcheng@mail.xjtu.edu.cn

站点计数器
箴言

我们所使用的工具深刻地影响我们的思考习惯,从而也影响了我们的思考能力。

--埃德斯加·狄克斯特拉

 我是唯一的,但我仍然是普通的。我不能做所有的事情,但我仍然能做一些事情;正因为我不能做所有的事情,所以我要做自己能做的事情 。

 前言

本书是一个新的计算机教育时代的产物,计算思维就是这个时代的名称。一般认为科学思维主要分为理论思维、实验思维和计算思维三大类,所以理论、实验和计算成为推动人类文明进步和科技发展的三大支柱。而计算思维主要内容,则包括了问题求解、系统设计和人类行为理解。

在高等院校的计算机教育领域,一直存在两种截然不同的教材:一种是面向计算机和信息专业领域的,存在众多成熟和系统性很强的教材并形成学科教育的基础;另一种则是面向所有专业的计算机基础教材,由于其中的内容大部分是面向计算机基本应用的,所以对平台技术和工具的选择具有依赖性,而且随着技术的变换而不断变化。

这种情况的后果是,由于在计算机与网络技术发展迅猛,一方面,大部分专业工作者在学校所接触到的信息技术新产品不久就成为明日黄花并为更新的所替代,甚至一种计算工具尚未完全掌握,新一代的工具又产生了。这种状况往往令人目不暇接,以至于无所适从。另一方面,计算科学的基础内容,那些在计算机科学课程系列中被认为极为重要的核心理念和基本方法,虽然变化缓慢,但由于其枯燥艰深,难以为广大的专业工作者所了解和掌握。

在这个新的计算机教育时代,大学计算机课程的重要任务之一是需要让学习者体验到计算的愉悦——计算原理的相互影响以及问题有效解决的思维方式

本书的目的就是希望朝着这个方向努力。希望在有限的时间里,将计算机科学的核心理念传播给一般性读者,并且,希望这些理念是可以观察、验证和投入实际应用的—---即使这种应用水平还属于初级阶段,可能存在极大的需要改进的地方。

鉴于目前大部分高校学生具备的计算机和信息应用技术和认知基础,本书的重点放在以下方面:

1.       程序设计基础:本书对读者的程序设计知识为零起点,而介绍算法显然离不开最基本的程序设计概念。但本书的主旨并不是介绍程序设计,所以程序设计语言的选择和应用方法采用了不同于以往传统教材,目的是希望使用最短的时间让读者可以掌握一种可以进行算法讨论的程序设计工具。这部分内容包含在第1章和第2章之中。

2.       算法分析要点:算法是计算机科学的精髓,也是本书所强调的核心内容。算法分析的要点是通过理论估算和实验验证两种方式,比较算法设计的时间和空间复杂性;并让读者熟悉和了解计算机科学中,算法设计普遍应用的“空间换时间”的基本原则。这部分出现在第2章。

3.       基本算法与策略:与高校学生的计算机与信息基础结合,开始基本常用算法的介绍,让读者可以直观的感受使用计算机进行问题求解的魅力,并养成问题分析和算法选择的习惯;而基本策略的引入,则是计算思维的直接体现,可以让读者感受计算机科学中应用人类传统智慧的一些基本原则,并形成计算策略应用的基本规律。这部分内容包含在第3章。

4.       计算与数据模型:模型化的思想是科技发展的重要手段,这部分的内容主要考虑两个方面:一是以图灵机为核心的计算理论的引入和验证,为读者提供有限状态机算法设计的基本训练;二是开始引入抽象数据类型,因为计算科学的两个核心概念,抽象和自动化,在这里都涉及到了理论和实现。这部分内容出现在第4章。

5.       具有数据结构特色的算法:内容包括在第5章、第6章、第7章中,每一章的内容都与某种抽象数据类型相关,是本书实践计算思维教学的问题求解部分内容最为集中的部分,具有较强的实践性和应用价值。

6.       计算工具的选择和评估:由于计算思维必定受到人和计算工具的能力限制,这部分试图向读者介绍计算工具的选择原则和评估方法,以便明确认识计算工具的限制和最大限度利用计算工具本身的能力,这也是本书的特殊视角所致。由于作为算法评估工具的可视化程序设计语言,除了进行算法原型的设计和分析之外,也可以将算法设计的结果转换成为其它的程序设计语言。这样,除了能够完成基本的算法功能外,符合应用需求的程序和计算环境就有了选择的必要。这部分内容出现在第8章。

本书可以作为一门“大学计算机”性质课程的基础教材,为大学的一、二年级开设。同时也可以作为程序设计、数据结构、离散数学等课程的入门参考。

作者谨向全体参与以“计算思维”为切入点的大学计算机课程和教学改革的同行致以敬意:因为,采用一种全新的视角来开展这类课程的教学,不仅需要辛勤的付出和投入,而且需要具备挑战未知领域的勇气和魄力。

经过两年多的准备和实践,作者发现这种付出的所得到回报,是非常值得的。这也就是当学生拿着自选专题的算法大作业,同教师和同学进行交流的时候,你会突然发现,在学期开始时,甚至不知道分支、循环为何物的学生,到了期末已经可以与他人讨论非常专业的算法问题了。

这是作为大学计算机课程教师存在的最高境界和所能获得的最好奖励。

目录

课件资源下载

版权所有:西安交通大学 站点设计:数据与信息中心 陕ICP备05001571号 IPhone版本下载 IPhone版本下载    Android版本下载 Android版本下载
欢迎您访问我们的网站,您是第 位访客
推荐分辨率1024*768以上 推荐浏览器IE7 Fifefox 以上