APP下载

程序设计类课程中计算思维能力培养的途径及实验教学模式研究

2014-04-07吴玲李旭亮徐辉

黑龙江教育·理论与实践 2014年6期
关键词:课题组程序设计思维能力

吴玲,李旭亮,徐辉

(黑龙江大学计算机科学技术学院,黑龙江哈尔滨150080)

程序设计类课程中计算思维能力培养的途径及实验教学模式研究

吴玲,李旭亮,徐辉

(黑龙江大学计算机科学技术学院,黑龙江哈尔滨150080)

本文深入分析了目前普通高等本科院校程序设计类实验课程中出现的问题,研究了计算思维的提出背景和内涵特征,就任务抽象和分解、启发式推理、知识体系重构、思维能力训练、实验教学模式等方面对程序设计类课程进行改革。课题组以实际行动推动了程序设计类课程的教学改革,指导学生提炼出知识和技能背后所包含的具有普适性的本质思想——“计算思维”,对学员的人才培养工作具有重要意义。

计算思维;教学改革;实验流程;考核指标

推动人类社会文明进步和科学发展的科学思维,主要有理论思维、实验思维,以及获得人们广泛认可的“计算思维”[1]。2006年,周以真教授对“计算思维”进行了正式定义,据周教授解释,计算思维的本质是自动化和抽象,强调的是求解的操作过程和问题的机器实现,可见,计算机编程语言的灵魂即是计算思维,而程序设计类课程则是对学生计算思维最具可操作性、最直接的训练平台。

一、目前程序设计类课程教育教学的弊端

程序设计类课程在计算机及其相关专业中占据至关重要的地位,它是计算机入门的基础课程,为计算机及其相关专业后续课程的学习提供了知识基础[2]。程序设计类课程实验教学的主要任务有二:其一是以一种或多种程序设计语言为依托,通过上机实际操作,掌握程序设计语言的基本运用技能和技巧;其二是通过设计算法、编写程序和调试测试,加深对编程语言的理解和运用,并锻炼学生用计算思维解决实际问题的能力。

但通过课题组多年来教育教学的实际经验显示,大部分学生对程序设计类课程实践环节存在如下认识误区:第一,普遍认为程序设计语言语法规则复杂烦琐、易忘难记,学习难度较大;第二,普遍认为课程内容枯燥乏味,与实际联系不多,学习热情不高;第三,很多学生只是进行单纯的理论学习,一旦要编写实际程序往往不知如何下手,久而久之就产生了畏难情绪。所以说,怎么养成学生正确的计算思维习惯、提高学生高强的计算思维能力,探索有效的实践教学模式是从事程序设计类课程实践教学的老师亟待解决的问题。

在传统的程序设计类课程的教学和实验过程中,基本使用原始的实证分析验证的教学方法,往往因为对编程语言的语法规则太过重视,而忽视了对学生实践能力的培养;或是在实验教学环节过于程式化、考核随意性强、监督环节薄弱,无法锻炼和提高学生程序设计能力和计算思维能力,很难激发学生的学习兴趣,更谈不上培养其思维能力。

二、探索适合在程序设计类课程中对学生进行计算思维能力培养的途径

计算机科学体系庞杂,本身并非仅仅是编程那么简单,其能力分为计算机使用能力、计算机系统认知能力和计算思维能力。怎么在程序设计类课程中培养学生的计算思维能力,需要我们解决的基本问题即:任务抽象和分解、启发式推理、重构知识体系、思维能力训练。主要从以下两方面入手:

(一)引入“观察—联想—变换”的计算思维方式或过程

在ACM大赛指定参考书《程序设计中常用的计算思维方式》中,将程序设计的一般思维过程概括为“先观察,再联想,后变换”,即经过观察问题而了解、了解问题而认识、认识问题而解决,继而经过编程者自己的联想,与现有的知识和经验相结合,寻找之间的关联,最终经过改造和变换,将初始问题转化成一个或多个已知解决方法的小问题,达到解决初始问题的目的。基于此,课题组尝试对目前程序设计类课程所采用的问题驱动、项目分解、启发式教学等方法进行完善,通过对学生程序设计的一般思维方法或过程的引导,使学生感受到程序设计之美、独立解决问题之美、计算之美,耳濡目染培养他们的计算思维能力。

通过培养和引导学生利用“先观察,再联想,后变换”的思维过程解决问题,让学生感受到程序设计之美、独立解决问题之美、计算之美。

以《C语言程序设计》课程为例,其中的许多知识点都为此提供了生动案例。第一堂实验课上,实验教师主要以展示经典案例为主,例如实验教师可以从“猜数游戏”入手,在课堂上用游戏的方式激发学生对语法、语义、算法、设计的学习兴趣,从游戏引入知识点,用知识点带动学生对语法的掌握、对算法的理解、对设计的熟悉,是学生加深对计算思维的理解。这种传授知识、技能和计算思维的一体化教学模式,摒弃了原有的“重语法、轻方法、不谈思维”的错误教学方法,使教学目标从“知识和技能”的传授上升到“思维”的教学,即指导学生提炼出知识和技能背后所包含的具有普适性的本质思想——计算思维。

(二)融合“轻游戏”进程序设计类课程的教学实践中

课题组还尝试着将“轻游戏”,也就是教育游戏引入到程序设计类课程中,将枯燥乏味的语法规则,利用电脑游戏的形式展现在学生面前,将游戏娱乐融合进程序设计类课程的教学实践中,在激发学生学习兴趣和学习动机的同时,使其形成自主学习的心理,主动进入到知识学习的情境当中,提高学习者的对程序设计语言语法规则的熟练度,帮助学习者内化计算思维方法,从而达到培养学习者计算思维能力的目的。

三、构建适合计算思维能力培养的程序设计类课程实验教学模式

程序设计类课程的实验教学环节可以直观地让学生感知程序设计语言的内在规律,使学生在程序设计这一领域从感性认知上升到理性认知,在问题分析、算法设计、程序编码、程序调试的过程中,巩固已学的理论知识,进一步培养创造性思维方式及实践能力。在程序设计类课程学习的过程中,学生通过上机操作了解算法、掌握程序设计方法、掌握程序设计语言及其运行环境,最终掌握编写程序和调试程序的初步能力,可以说,程序设计类课程的实验教学是锻炼学生动手能力、编程能力、计算思维能力的重要途径。

为了能够将计算思维能力的培养贯穿在整个教学过程中,课题组尝试对目前程序设计类课程的实验教学模式进行相应的改革:

(一)实验流程规范化

要求学生严格按照“分析题目—用数学方法解决问题—绘制流程图—编写源程序—上机调试—归纳总结”的顺序依次进行,使学生能够养成正确的学习规律和思维习惯,提高他们创造性的思维方式及实践能力。

(二)倡导算法多样性

鼓励学生在实现同一个计算任务的时候编写不同的算法程序,引导学生对算法进一步探索并对自己出现的问题进行反思,在培养学生解决问题能力的同时,培养其创新意识和探索精神,还可以培养学生计算思维的多样化、灵活性。

(三)上机指导启发式

在学生上机实验遇到问题的时候,不直接指出其问题所在,而是用启发的方式引导学生自己找到问题所在并修改,养成其独立分析、判断问题的能力。

(四)考核评价客观化

加强过程化考核的力度,将设计是否合理完整、程序结构是否清晰、知识应用是否得当、代码是否有抄袭雷同现象、运行结果是否正确、具体答辩过程等对程序设计类实验项目的考核环节指标化,弱化实验教师的主观判断,指引学生以正确的方式学习课程内容,督促学生积极主动地学习,从而达到培养学生计算思维能力的目的。

计算思维的形成是一个长期的过程,仅通过目前两门课程的教学实验改革是无法构建起成熟的计算思维方式。课题组以2013级新生为实验对象,课题组成员根据不同学期内容对这些课程进行教育理念、教学方法、实验教学模式等方面的响应的改革;目前网上流行的“轻游戏”主要针对中小学或学前教育,很少有专注于开发大学生的教育游戏,下一步,课题组的一部分重心将放在程序设计类课程的“轻游戏”的开发上,以达到为学生今后的“计算思维”成长打下坚实的基础、提供必要的条件。

[1]牟琴,谭良.计算思维的研究及其进展[J].计算机科学,2011(3):10-15.

[2]朱立平,林志英.基于思维教学理论的程序设计课程教学模式的构建[J].计算机教育,2008(8):58-60.

编辑∕高伟

吴玲(1982-),女,黑龙江大学计算机科学技术学院、软件学院实验师,研究方向:软件工程。

本文得到了“2013年黑龙江大学新世纪教育教学改革工程项目”资助,项目编号:2013B44

猜你喜欢

课题组程序设计思维能力
培养思维能力
基于Visual Studio Code的C语言程序设计实践教学探索
原科技大学新能源开发与应用课题组介绍
培养思维能力
从细节入手,谈PLC程序设计技巧
高职高专院校C语言程序设计教学改革探索
PLC梯形图程序设计技巧及应用
“做”与“作”的推荐用法“做”与“作”的用法研究课题组