关键词:计算机教育;应用型人才;计算思维
1研究背景
随着计算机科学领域研究成果的不断丰富和完善,计算机技术已经应用于非常广泛的领域,如普适计算、商业智能、计算金融学、计算生物学、计算物理、计算医学等,并且与这些学科之间的交叉越来越深入。鉴于很多交叉研究具有较强的工程性质,单单依靠学术教育背景的传统研究型计算机人才是不可行的,所以培养能够快速地将计算机技术应用于某一领域,解决该领域具体计算问题的计算机应用型人才就变得非常重要。
以往,在计算机与其他学科人员共同开展研究时,计算机专业背景的研究人员往往被视为“编程者”,他们往往专注于在计算机上编程,实现某个具体功能、设计数据库结构、在屏幕上展现查询结果或是以代码复用为目的搭建整个程序的框架。但随着计算机变得无处不在,使用计算机的难度越来越低,设计数据库、编写计算机程序和复用他们的难度也不断降低。这是不是意味着计算机专业背景的研究人员的重要性降低了呢?
当然并非如此。事实上,这恰恰是计算机领域和其他领域的交叉研究从松散耦合型合作逐渐转向紧密耦合型合作的一个标志。计算机技术人员正在从单纯的编程实现脱离出来,从配角转为主角,逐步地改变各学科研究人员对各自领域的认识和思考方式。例如,机器学习已经改变了统计学,现在各个组织的统计部门都已经和计算机领域密切合作,以完成更具创造性的工作。
这种现状要求计算机应用型人才不仅应该具有扎实的编程能力和计算机学科基础,同时应该擅长抽象和分解问题的计算思维(Computational Thinking)。
对于计算机应用型人才的培养来说,如何在教学和实践中融入这种计算思维,使学生能够将其作为他们职业技能的一部分,解决未来工作中来自交叉学科的问题,是本文探讨的主题。
2计算思维
计算思维一词由Jeannette M. Wing于2006年提出[1],其定义是:运用计算机科学的基础概念去求解问题、设计系统和理解人类行为。它包括了涵盖计算机科学之广度的一系列思维活动。
典型地,通过对计算思维“是什么,不是什么”的分析,可得到以下特征描述[2]:
是概念化,不是程序化
计算思维远不止意味着能为计算机编程,还要求能够在抽象的多个层次上思维。
是根本的,不是刻板的技能
根本技能是每一个人为了在现代社会中发挥职能所必须掌握的,而不是意味着机械重复的刻板技能。
授,博士生导师,研究方向为分布式计算与计算机教育。
是人的,不是计算机的思维方式
计算思维是人类求解问题的一条途径,但绝非要使人类像计算机那样思考。与枯燥且沉闷的计算机相比,人类聪颖且富有想象力。使用计算思维控制计算设备,就能用自己的智慧解决在计算时代之前不敢解决的问题,实现“只有想不到,没有做不到”的境界。
是数学和工程思维的互补与融合
计算机科学在本质上源于数学思维,像所有的科学一样,其形式化基础建筑于数学之上。计算机科学又从本质上源自工程思维,因为已经建造的是现实存在的硬件和软件,这些基本计算工具的限制又迫使人必须计算性地思考,不能只是数学性地思考。












