1.2 计算思维
1.2.1 计算思维的提出
随着计算机科学领域研究成果的不断丰富和完善,计算机技术已经应用于非常广泛的领域,如普适计算、商业智能、计算物理、计算医学等,与这些领域之间的融合越来越紧密,对它们的发展产生了深远的影响,已经成为这些领域不可或缺的组成部分。艾兹格·W.迪科斯彻(Edsger Wybe Dijkstra,荷兰人,计算机科学家,图灵奖获得者)曾说过:“我们所使用的工具影响着我们的思维方式和思维习惯,从而也将深刻地影响着我们的思维能力。”可以预见,运用计算机学科的思想方法和技术解决各类问题必将成为现实,而能够正确理解计算机学科的基础概念,能够灵活运用各种思想、方法和技术解决实际问题将成为未来人才的必备技能。因此,对不同学科背景的人进行计算机科学教育,使他们熟悉和掌握计算机学科的各种思想和方法,通过训练成为一种思维方式,并能在面对问题时自觉、有效地运用成为当前教育的一个目标。
那么,什么是计算思维呢?
目前国际上广泛使用的计算思维的概念是由美国卡内基·梅隆大学计算机科学系主任周以真(Jeannette M. Wing)教授于2006年3月在美国计算机权威期刊Communications of the ACM上给出并定义的计算思维(Computational Thinking)。周教授认为:计算思维是运用计算机科学的基础概念进行问题求解、系统设计,以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。周以真还指出:“计算思维代表着一种普遍的认识和一类普适的技能,每一个人,而不仅仅是计算机科学家,都应热心于它的学习和应用。”计算思维的本质是抽象和自动化。如同所有人都具备“读、写、算”(简称3R)能力一样,计算思维是必须具备的思维能力。
中国科学院计算所李国杰院士说:“计算思维运用计算机科学的基础概念求解问题、设计系统和理解人类行为,它选择合适的方式陈述一个问题,对一个问题的相关方面建模,并用最有效的办法实现问题求解。”李国杰院士还认为,计算机科学本质上源自数学思维和工程思维。然而,计算思维远远不只是为计算机编程,它是抽象的多个层次上的思维,与“读写能力”一样,是人类的基本思维方式。他强调:“计算思维是每个人的基本技能,不仅仅属于计算机科学家。”计算思维是一种本质的、所有人都必须具备的思维方式,就像阅读、写字、做算术一样,成为人们最基础、最普遍、最适用和不可缺少的基础思维方式。
学者、教育者和实践者们关于计算思维的本质、定义和应用的大量讨论推动了计算思维在社会的普及和发展,但到目前为止,都没有一个统一的、获得广泛认可的关于计算思维的定义。所有的讨论和研究大致可分为两个方向:其一,是将“计算思维”作为计算机及其相关领域中的一个专业概念,对其原理内涵等方面进行探究,称为理论研究;其二,是将“计算思维”作为教育培训中的一个概念,研究其在大众教育中的意义、地位、培养方式等,称为应用研究。理论研究对应用研究起到指导和支撑的作用,应用研究是理论研究的成果转化,并丰富其体系,两者相辅相成,形成对计算思维的完整阐述。