C++程序设计课程混合式教学模式探索

2022-05-30 22:24张丽李菊
电脑知识与技术 2022年27期
关键词:程序设计混合式教学翻转课堂

张丽 李菊

摘要:C++程序设计是理工科高校新生的必修课程,也是后续课程如数据结构、Java程序设计的先导课程。通过分析本课程在传统教学过程中存在的问题,针对这些问题,使用混合式教学模式进行教学改革,合理设计在线教学资源,在线下教学中引入翻转课堂,采用OJ实时评测学生编程题目,使用过程化考核优化考核方式,以期达到提高学生学习兴趣,加强学习主动性,增强动手实践能力的效果。

关键词:C++;混合式教学;翻转课堂;在线评测;程序设计

中图分类号:G642        文献标识码:A

文章编号:1009-3044(2022)27-0161-02

开放科学(资源服务)标识码(OSID):

1 引言

在当前信息化时代,如何提升本科教育质量已经成为课程教学改革的焦点[1]。C++程序设计课程是理工科高校新生的必修课程,一般开设在大一学期。通过本课程的学习使学生掌握面向对象的基本概念,学会程序设计的基本方法和技能,使学生能编写出符合规范和性能良好的程序,是学好后续课程如数据结构、Java程序设计等的基础,也是培养学生编程思维的关键课程。

然而,C++程序设计课程的目前教学中存在一些问题,例如教学模式比较传统,多采用理论教学为主,课后上机为辅的形式 [2],教学过程中更侧重于语法,学生的学习积极性和主动性不高,动手实践能力较差。针对这些问题,目前有很多学者提出了线上线下混合式教学模式。梁小林[3]等采用了新一代信息技术,构建了线上线下相结合的完整的教学体系,取得了良好的效果。汪中[2]等构建了基于“超星学习通+课堂教学+在线评测系统”的混合式教学模式,优化考核体系,达到课程改革的预期目标。王全蕊[4]提出了渐进式翻转课堂模式,采用课堂授课和在线学习平台结合的模式。

本文通过分析课程的教学现状,针对存在的问题,在教学过程中探索使用混合式教学模式,充分利用丰富的线上资源设计在线教学,在线下教学中引入翻转课堂,使用在线评测系统及时评判学生上机实践结果,并采用过程化考核优化考核方式,从而提高学生的学习主动性,增强学生动手能力。

2 C++程序设计课程现状

目前大多数高校讲授C++程序设计课程时仍然采用传统的教学方式,包括课堂理论教学,课下习题巩固和上机实践,考核方式主要以期末考试为主,分析这种方式存在的主要问题有以下几点:

(1)教学方式陈旧

教学方式主要以课堂为中心,以多媒体教学为手段讲授书本知识。尤其是在大班教学中,这种教学模式不利于提高学生的学习兴趣,不能更好地培养具有创造能力的人才。

(2) 部分学生缺乏学习的主动性和积极性

在本学院中,C++程序设计是大一学生的专业基础课,学生的计算机思维还没有形成,学习本课程存在一定难度。同时,课程的语法知识点琐碎、分散,容易混淆且难于记忆,因此,在教学过程中教师需要重点讲解课本中的知识点,导致学生缺乏自主学习和主动构建知识体系的能力。

(3) 学生编程能力差异大,部分学生实践动手能力不高

学生编程能力程度层次不同,部分学生面临能听懂课,却不会编程的困难,但是也有部分学习成绩较好的学生希望得到更充分的编程锻炼。同时,学生编程作业提交后,没有得到及时的结果反馈,无法及时改正程序。因此需要将编程作业分层次,同时需要更快速反馈学生上机实践结果。

(4) 传统考核方式重语法而轻实践,缺乏思维和能力的培养

在本学院中,C++程序设计课程考核期末考试占比70%,采用纸质考试形式。因此,试卷内容仍然是以考查理论知识为主,忽略了程序设计课程的本质,为了通过考试,学生将更多时间用于理论题目,而动手及实践能力并没有显著提升。

因此,改变C++程序设计课程的传统教学模式,采用线上线下相结合的混合教学模式,提高教学质量,已成为教学改革中的一个重要研究课题[5]。

3 構建线上线下混合教学模式

本文提出的线上线下混合教学模式设计如图1所示,包括课前、课堂、课后和过程化考核四个环节。课前环节教师规划设计线上教学资源,并设计学习任务单,指导学生完成课前自学,同时关注学生的互助讨论;课堂环节引入翻转课堂,教师布置任务指导学生分组讨论,根据学生学习情况进行重难点拓展讲解和指导答疑,重点加强实践环节的教学指导,通过算法思路阐述、流程图讲解、题目拓展方式,加强学生编程能力的培养;课后环节教师布置章节作业促进学生知识点巩固,并引入OJ及时反馈学生编程结果,最后采用过程化考核方式考核学生的课前线上自学,课中任务完成情况、编程练习结果和期末考试情况。

3.1 课前环节

教师分析教学内容中组成部分,针对教材中的章节,划分出不同的知识点,分割成若干独立教学单元,设计在线教学内容。例如第3章程序设计初步,可进一步分解成顺序结构,选择结构和循环结构三小节内容,顺序结构主要的知识点是语句和输入输出,选择结构和循环结构又可以分解成if-else、switch、选择结构嵌套和while、do-while、for几个知识点,如图2所示。这样可以把教学内容分解成“章—节—知识点”的三级结构[6],根据划分知识点,设计在线课程。一方面可以选择合适的线上视频资源,另一方面可以录制一些视频作为补充,选择合适平台,例如学习通,设计适合本学院学生的在线课程。

为了更好地指导学生完成线上课程学习,教师设定线上学习任务单,针对教学内容,制定教学目标,给出详细的课前学习任务单和课后作业任务单。学生课前观看学习视频,完成自主学习过程后,教师需要检查学生的学习进度。学生在互动讨论区提出问题,教师回答问题,并收集学生提出较多的问题。

3.2 课堂环节

课堂上采用翻转课堂,优化线下教学方式,改变传统课堂中以教师为主导的状况,使学生成为学习的主导者,而教师则成为学习的引导者[7]。学生通过课前自学,基本理解了本节课的内容,并且已经提出了自己的问题。教师可以布置任务,让学生通过分组讨论对知识点进行梳理强化,通过小组展示上台讲解的方式,获取学生真实的学习情况和存在的问题。对本节课的重难点和学生问题较多的地方,教师要进行重点讲解,让学生的能力得到拓展。对于初次采用翻转课堂进行线下教学,可以每章选择重要知识点进行教学试点,后期根据实施情况进行合理调整。

课堂环节中需要重点进行实践环节的教学和指导,对于学生算法思维训练进行加强,可以采用循序渐进的方式。例如,在实际教学中循环的学习一直是学生的难点,教材中有双重循环的编程例题:找出100~200之间的全部素数。我们首先讲解如何判断一个数为素数,通过流程图的方式对算法思路进行讲解,并编写程序。然后再过渡到如何实现判断100~200之内的数为素数,从而让学生更容易理解。

3.3 课后环节

对于任何知识的学习,课后的复习巩固都非常重要。对于编程语言来说,语法是写程序的基础,因此课后环节需要兼顾语法知识的掌握和编程能力的提高。我们在学习通平台上设计了每章节的练习题目,设定了完成时间,要求学生在规定时间完成作业,作为过程考核的一部分。通过这些练习题目,帮助学生巩固语法知识。针对学生编程的练习,我们设计了基础题目和拓展题目,并采用OJ实时评判学生程序设计。基础题目要求所有学生完成,拓展题目难度大于基础题目,要求成绩中等以上的学生完成,加强学生编程能力的提高。同时,我们设计了游戏开发题目[8],作为拓展题目一部分,极大提高了学生们的编程兴趣。对于典型题目,我们录制了编程题讲解视频,并上传到了学习通平台,供学生课后多次观看。

3.4 过程化考核环节

优化传统的考核方式,注重阶段考核,针对学生就在线资源的学习情况、课堂互动情况、每章练习题目作答情况、OJ评测的程序编写情况以及期末考试多方面进行考核,更科学、更能激励学生的学习积极性。各方面考核内容和比重如表1所示。

4 结论

本文探索了C++程序设计线上线下混合的教学模式,改变传统教学中以教师为主导的方式,探索以学生为中心,教师更多的是对学习进行指导的新方式,以达到提高学生学习兴趣,提升学习效果的目的。在实际的实施过程中,通过匿名调查问卷方式获取到绝大多数学生认可新的方式,同时学生学习C++的兴趣也得到了明显的加强,动手实践能力得到了提高。

当然,本模式还存在待改进的方面,例如,线上教学资源的建设、大班翻转课堂的合理设计和应用等,需要在后续C++程序设计教学实践中进一步探索。

参考文献:

[1] 冯光,金强山.“混合式+项目化”模式在“C程序设计”教学中的实验研究[J].计算机时代,2020(10):79-81,85.

[2] 汪中,施培蓓.“互联网+”背景下“C++程序设计课程”教学改革与实践[J].合肥师范学院学报,2021,39(3):83-85.

[3] 梁小林,胡育勇,孙志宏.新工科程序设计类课程智慧课堂创新与实践——以河北经贸大学《C++程序设计》课程为例[J].沧州师范学院学报,2021,37(3):113-118.

[4] 王全蕊.C++程序设计递进式翻转教学模式的实践研究[J].河南科技学院学报,2020,40(8):59-64.

[5] 李素若.基于慕课的编程类课程混合式教学模式研究与实践——以《C++程序設计》为例[J].软件导刊,2017,16(1):189-191.

[6] 樊志平,金政哲.慕课环境下教学新模式研究——以“C语言程序设计”课程为例[J].电脑知识与技术,2017,13(30):134-135.

[7] 苏小红,王甜甜,张羽,等.基于大班翻转课堂的混合教学模式探索与实践[J].中国大学教学,2017(7):54-62.

[8] 童晶,丁海军,金永霞.C语言课程设计与游戏开发实践教程[M].北京:清华大学出版社,2017.

【通联编辑:王力】

猜你喜欢
程序设计混合式教学翻转课堂
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
高职高专院校C语言程序设计教学改革探索
基于SPOC平台的混合式教学模式研究和实践
基于SPOC模式的《大学计算机基础》课程改革的研究
浅论在混合式教学模式下高职思政课评价体系的构建
《C语言程序设计》课程的教学改革与实践
翻转课堂在小学数学教学中的应用
翻转模式在“液压与气动”教学中的应用研究
翻转课堂在英语语法教学中的运用研究