徐丽丽厦门大学信息科学与技术学院福建厦门361000
摘要:本文就计算思维能力培养的编程基础教学改革对促进教学工作、提高教学质量的作用和意义加以阐述,并提出了编程基础教育课程开发的策略和方法。
关键词:计算机思维计算机基础教学编程教育
一、计算思维
计算思维是将计算机科学的基础概念用于解决问题、进行系统设计、理解人类行为的涵盖计算机科学领域之广度的一系列思维活动。如同人们能够阅读、写作和做算术一样,计算思维是所有人都应具备的思维能力。运用计算思维解决问题,是通过约简、嵌入、仿真等方法来描述问题求解的方法和过程;运用计算思维解决问题,是采用抽象和分解等方法将较为复杂的问题分解为若干人们可以理解和控制的子问题。未经过专业学习的人也具有一定的计算思维能力,但这种与生俱来的思维能力需要有意识训练和培养,使之成为人们面对问题时习惯使用思维方式。计算思维能力的培养有助于学生创新能力培养,有助于学生形成良好思维方法和行为习惯。
二、计算思维能力培养的计算机基础教学改革对促进教学工作、提高教学质量的作用和意义
1.提高学科地位。当前大学非计算机专业第一门计算机课程已发展到新的阶段,应该将其开设成类似于大学数学、大学英语等高等教育中不可缺少的独立课程,应有一样地位的通识类思维教育课程。
2.更新教学内容。要实现思维性教学改革,不仅要讲知识,更要讲贯通这些知识的思维。在这样的背景下,究竟给学生讲什么、怎么讲,成为一个尖锐的问题。要改变传统计算机基础教学内容,从注重计算机应用转变为注重编程能力、计算素养。
3.转变教学方法。“MOOC+SPOC+翻转课堂”是一种越来越被各大高校推崇的、新的教学模式,教育部高教司以及各个教指委、协会、研究会都在利用各种渠道力推。这种教学模式也切实有它独特的优势。在MOOC在线平台上,短短几年(2014年至现在)时间已经积累了大量优秀的教学资源。要充分利用优秀的资源对学生课外知识进行扩展。
为提升计算机素养的需求,《编程基础》作为校选课的尝试,对计算机基础教学改革起到了探索和推动的作用。
三、编程教育课程开发的策略和方法
1.以项目引领,注重问题分析、解决。通过编程教育发展和培养学生的计算思维,我们需要改变以往学习编程语言的方法。很多计算机专业的学生都学习过计算机编程语言,却不能写出一个完整的程序。原因在于,其学习过程中,只是学习表达式、循环、条件判断等命令行,最终只能学到该编程语言的语法结构,而不能应用于现实问题的解决。周以真指出,计算思维培养的关键是“抽象”和“自动化”,不是孤立地教编程,一开始就让学生把抽象和实现“自动化”的编程结合起来。这也是我们开发校本教材的总原则。编程只是实现问题“自动化”解决的一个部分,学生通过了解项目中提出的问题和需要解决的问题,一开始就把解决问题的思路与解决实际问题结合起来。在解决问题的过程中,分析问题,规划制定解决方案,并引导学生用批判性思维来衡量方案的可行性,然后着手实现。
2.项目主题选择从身边实际问题出发。为培养学生解决实际问题的能力,项目主题要选择接近生活、能切身感受到的主题,这样容易引起学生的共鸣。如日常生活中常碰到汇率换算的问题、按性价比挑选商品、搬运货物、行车路线选择等,让学生考虑如何用计算机科学的思维去解决相应的问题,通过学生对问题的分析和实践操作,推动到相似问题的一般性解决方案中去。
3.以Blockly语言、AppInventor开发平台为载体,降低编程准入门槛。谷歌公司推出的可视化编程语言Blockly,是一种类似于搭积木的可视化程序编写方式,一经推出,就受到了广大初学者的青睐。
(1)可视化编程。相比之前在中小学生中推行的LOGO、Basic、C语言,其最大的优势是不需要学生记忆命令行,使用者可以不认识英文单词,也可以不会使用键盘。其构成程序的命令和参数通过积木形状的模块来实现,用鼠标拖动模块到程序编辑栏就可以轻松实现程序编写。熟悉程序开发的人都知道,不同的程序语言只是实现的语法命令不同,在问题解决的思路上是一致的,只是解决问题所编写的代码不同而已。培养学生的计算思维,注重的是培养学生解决问题的思路,与编写代码的语法没有太大的关系。Scratch正是这样一款可视化的、忽略命令行代码的编程软件,不需要学生去记忆枯燥乏味的命令行,为学生最终实现编程大大降低了门槛。(2)积木模块类型丰富。Blockly语言作为一门编程语言,提供了与其他编程语言一样的语法模块,通过模块分类呈现的方式,学生只需要选择合适的模块,将其拖曳到程序的编辑栏,即可使用。Blockly语言还可以由使用者自行设计扩展包,大大扩充了程序的功能和适用范围。
总之,计算思维能力是一种人们普遍应该具备的思维能力,基于计算思维能力培养进行计算机基础教学,有助于提高计算机基础课程的教学效果,激发学生对课程学习的兴趣。
参考文献
[1]郭福亮崔良中李永杰周钢基于计算思维能力培养的计算机基础教学改革探索[J].计算机工程与科学,2014,(12)。
[2]范银平计算机基础教学中学生计算思维的培养与提高[J].统计与管理,2015,(5)。