基于SPOC的程序设计课程计算思维培养

2018-11-26 09:33汪小寒陶玉婷
电脑知识与技术 2018年24期
关键词:计算思维任务驱动程序设计

汪小寒 陶玉婷

摘要:分析传统程序设计课程的现状与不足,提出基于SPOC平台建构网络、课堂、实验三方联动课堂的教学模式,从计算思维意识、计算思维方法以及计算思维能力3个方面培养学生的计算思维。

关键词:程序设计;计算思维;SPOC平台;翻转课堂;任务驱动

中图分类号:TP311.1 文献标识码:A 文章编号:1009-3044(2018)24-0126-02

Abstract: Based on the analysis of the current situation and shortcomings of traditional programming courses, this paper puts forward the teaching mode of constructing network, classroom and experiment based on SPOC. The students' computational thinking is cultivated from three aspects: the consciousness of calculating thinking, the method of calculating thinking and the ability of calculating thinking.

Key words: programming; computational thinking; SPOC; flipping classroom; task driven

1 引言

计算思维是目前高等教育计算机教学探讨的一个热门话题,也是国内外计算机专业教育广泛关注的一个课题。2010年11月中国工程院院士、中国计算机协会理事长李国杰教授出席山东大学“百家讲坛”活动,就计算思维和大学计算机教育的关系进行讨论,并指出计算思维是每一个人都应该具有的一项基本技能[1]。2012年5月中国科学院院士、中国科技大学陈国良教授在合肥工业大学进行学术交流时强调当下高校计算机课程设计的核心是计算思维,并提出了以提高学生计算思维为核心目的的大学计算机教育[1]。2017年7月第六届“计算思维与大学计算机课程教学改革研讨会”在成都东软学院举办,哈尔滨工业大学战德臣教授提出:当前社会发展和各种科研活动都要求从业人员具有一定的计算思维,计算思维也是我们在解决各类实际问题时必须具备的一项能力。因此,计算思维一直是计算机专业教学研究的热点,如何在程序设计课程教学中培养学生的计算思维是当前亟待解决的问题。

2 计算思维的定义

计算思维这一概念是美国卡内基·梅隆大学计算机系主任周以真教授在《Computational Thinking》一文中第一次明确被提出[2]。她指出:计算思维是运用计算机科学的基础概念进行问题求解、系统设计,以及人类行为理解的涵盖计算机科学之广度的一系列的思维活动,具有自动化和抽象化[3]的特点。同济大学龚沛曾教授将计算思维的定义分为三个层次[4]。

计算思维意识[4]:计算思维意识是指主动用计算思维方法解决实际问题的意识。但通常我们很难意识到一些问题可以利用计算机解决,即便意识到这一点也不容易将这些问题与我们记忆中的计算思维方法自动联系起来,我们通常进行的计算思维活动是无意识的,如何帮助学生主动地运用计算机程序解决实际问题是培养学生计算思维能力的关键。

计算思维方法[4]:计算思维方法是指用分解、仿真和递归等方法将一个复杂问题转化为一个简单问题来解决。例如,多核处理器的并行处理方法;冯诺依曼体系中的抽象思维方法;穷举法、贪心法、回溯法也都属于计算思维方法的范畴。

计算思维能力[4]:计算思维能力是指利用计算机程序解决实际问题的能力。例如,实现大数求和问题、创建管理系统网站问题,都有助于培养学生的计算思维能力。

3 程序设计课程教学现状

程序设计课程的开设有助于培养学生的逻辑思维能力、抽象概括能力以及创新能力,对计算机专业学生的计算思维培养有着举足轻重的作用,但目前大部分高校程序设计课程的教学并没有意识到这一点[5]。

缺乏计算思维教育理念,忽视计算思维意识的培养[1]。教师缺乏计算思维的教育理念,课堂上没有将计算思维与程序设计课程融合;学生习惯于接受直观易懂的知识,潜意识地拒绝类似的抽象概念,很难树立计算思维意识。

侧重理论知识传授,忽略计算思维方法的教授与运用[1]。教师在课堂上注重概念定义和用法的讲解,向学生渗透概念中蕴含的计算思维方法较少,学生学习完这些概念后无法利用相应计算思维方法解决实际问题,不能达到程序设计课程的培养目标。

实验课程常采用验证性实验,忽视计算思维能力的培养。教师在实验教学中以验证课本例题为主,学生在完全不理解算法思想的情况下,也能够完成实验内容,获得较高的实验分数[6]。整个实验过程对的提升学生利用程序解决实际问题的能力作用有限,难以实现程序设计课程的基本宗旨。

注重语法细节的教授与考核,忽视算法思想的培养与考察[1]。教师将教学和考核重点放在语法细节上,学生认为语法细节是学好程序设计的关键,学到的只是知识细节,没有理解其中的思想精髓。

4 基于SPOC平台的程序设计教学

SPOC完美地融合了MOOC课程和传统课程的优势,把网络空间的“虚”和校园课堂的“实”结合在一起[7]。通过搭建限制性準入的网络教学平台,将计算思维与课程进行融合,帮助学生树立计算思维意识;在网络学习的基础上,采用翻转课堂的理论教学模式,促进学生对计算思维方法的理解;在深入理解计算思维方法的前提下,践行基于任务驱动的实验教学,强化学生计算思维方法的运用,提升计算思维能力,实现“网络+课堂+实验”三位一体的教学模式[2],建立全过程评价体系,完成计算思维的培养。

4.1 SPOC网络教学——树立学生计算思维意识

教师根据自身教学实际对已有的教学视频进行相应的整合,按照科学合理的学习顺序放在SPOC平台上[8-9],并根据每一讲的内容为学生精心设计课程重难点剖析、案例分析以及随堂检测,实现计算思维与课程的融合,通过SPOC平台限制性准入网络教学,帮助学生提前了解程序设计课程中相关概念,提前接触计算思维,树立计算思维意识。

4.2 SPOC理论教学——传授学生计算思维方法

理论教学过程中,教师需要在网络教学的基础上,采用“翻转课堂”的理论教学方法,充分发挥学生学习的主体地位,针对学生网络学习过程中遇到的问题,结合经典案例,有意识地向学生传递计算思维方法,帮助学生理解常用计算思维方法的内涵,并能够准确全面运用[10-11]。

理论教学结束后,教师将课堂教学资料和作业进行整理,及时上传到SPOC平台,供学生查阅和复习,学生通过SPOC平台下载和提交作业,教师和学生通过SPOC平台实现课后实时互动,实现网络课堂与校园课堂的完美融合,帮助学生真正理解计算思维方法。

4.3 SPOC实验教学——培养学生计算思维能力

在网络教学和理论教学的基础上,采用任务驱动[12-13]的实验教学方法,提高学生独立解决实际问题的能力,完成计算思维能力的培养。

实验课前,教师先根据网络教学和理论教学的内容设计合理可操作的任务,将实验指导与实验内容上传至SPOC平台供学生下載,要求学生在课下完成基础性的实验任务,并按时提交至SPOC平台;实验课中,教师指导学生分析综合性的实验任务,阐述其中的计算思维思想和方法,从而提高学生利用程序解决实际问题的能力,实现培养学生计算思维能力的课程目标[14];实验课后,教师通过SPOC平台对学生的实验作品做出反馈,对实验中的重难点进行线上剖析,并选择优秀作品上传,与学生交流、探讨和总结。整个实验教学以学生自己动手实践为主,以任务为驱动的方式提升学生独立分析问题和解决问题的能力为核心,完成培养学生计算思维能力的任务。

SPOC平台还采用多方位多角度的全过程评价体系[9],通过对学生网络学习、理论学习以及实验学习三个部分综合评价给出该门课程的最终成绩,在一定程度上引导学生对计算思维意识、计算思维方法以及计算思维能力培养的重视,这种多维度的综合评价方式对计算思维的培养具有重要意义。

5 结语

程序设计课程对提升学生分析和解决实际问题的能力有着不可替代的作用[15-16],教师必须在充分理解计算思维本质和内涵的基础上,积极践行SPOC混合教学平台下“网络+课堂+实验”三位一体的教学模式,完成培养学生计算思维能力的课程目标。

参考文献:

[1]潘亚平,徐燕.基于计算思维的计算机程序设计课程的教学改革与实践[J].淮海工学院学报(人文社会科学版),2012,1023:76-78.

[2]乔淑云,黄刚.程序设计类课程教学改革与计算思维之培养[J].计算机教育,2012(19):17-19+23.

[3]丁海燕.计算机程序设计课程中计算思维的培养[J]. 实验技术与管理,2015(32):16-18+21.

[4]龚沛曾,杨志强. 大学计算机基础教学中的计算思维培养[J]. 中国大学教学,2012(5):51-54.

[5]冯博琴.对于计算思维能力培养“落地”问题的探讨[J].中国大学教学,2012,09:6-9.

[6]朱前飞,杨鼎强,蒋加伏,孟爱国.基于计算思维的程序设计课程改革研究与实践[J].计算机时代,2017(6):69-73.

[7]余久久,杜立刚.应用型本科高校SPOC混合式实践教学探索——以“软件工程”课程为例[J].通化师范学院学报,2016,3710:66-72+121.

[8]汪小寒,张津,左开中.SPOC混合教学模式构建[J].电脑知识与技术,2017,1325:116-118.

[9]余久久.软件工程SPOC教学团队的建设与思考[J].电脑知识与技术,2016,1207:140-141.

[10]牛淑丽.基于网易云课堂的SPOC翻转教学模式设计研究[D].河北师范大学,2017.

[11]厉兰洁.SPOC环境下翻转课堂的设计与应用研究[D].四川师范大学,2016.

[12]丁海燕.计算机程序设计课程中计算思维的培养[J].实验技术与管理,2015,3212:16-18+21.

[13]刘建强.任务驱动:科学探究教学的重要策略[J].教育研究与实验,2015(01):81-85.

[14]徐东风,陈孟娴,杜治国,肖磊.面向大学计算机基础的计算思维案例设计[J].计算机教育,2015(7):8-11.

[15]黄静,高延英,杨宇姝.基于计算思维的程序设计课程教学模式研究[J].计算机教育,2013(5):51-54.

[16]王先超,王春生,胡业刚,姚云飞.以培养计算思维为核心的C程序设计探讨[J].计算机教育,2013(13):44-47.

【通联编辑:王力】

猜你喜欢
计算思维任务驱动程序设计
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
高职高专院校C语言程序设计教学改革探索
程序设计课程中计算思维和应用能力培养问题研究
任务驱动, 启发学生自学
PLC梯形图程序设计技巧及应用