基于分组讨论的程序设计课程教学改革实践
作者: 王寅同 赵向军
[摘 要]针对目前学生对被动式教学参与度偏低的问题,文章提出基于分组讨论的程序设计课程教学改革实践。文章从分组讨论模式设计、分组讨论教学实施要点、分组讨论角色任务要求和课程考核四个方面阐述了程序设计课程教学改革实践的总体思路,强调课程教学过程中的学生主体能动性和教师主导作用,以提升学生的课堂参与度、沟通交流能力和创新思维能力。
[关键词]分组讨论;程序设计课程;教学改革实践;创新思维
[中图分类号] G642.0 [文献标识码] A [文章编号] 2095-3437(2022)12-0097-03
引言
计算机技术的应用及发展推动了社会生产力水平的整体提升,计算机也由此成为人们日常生活、工作和学习中的重要工具,社会对计算机专业人才的需求也实现由量到质的转变。计算机专业教学应紧密结合当今人才培养目标,制订与之相适应的教学计划,创新教学内容与教学模式[1-2]。然而,传统的教学方式对学生学习程序设计课程的热情和积极性产生了不利影响,导致学生在教学过程中的参与度偏低、学习效果不理想,其主要原因可归纳为以下3点:1.计算机技术的快速更新,专业课程知识点多而复杂、不易理解,在学习过程中学生对各个知识点的理解和应用不能做到有的放矢;2.应试教育模式影响了教师的教学行为,即部分教师对学生的主体作用缺乏必要的重视,在教学过程中专注于备教案、偏向于多讲,带来的不利影响是学生的主体能动性和创造性得不到充分发挥;3.基础知识储备影响其学习积极性。专业课程的学习需要学生具备高等数学、逻辑运算、线性代数等知识,而学生的基础知识储备水平不一致,在一定程度上限制了教学内容的制订和教学进度的安排。长此以往,学生将会失去对程序设计课程学习的兴趣和热情,失去自主学习的能力,学生的创新和实践能力得不到提高[3]。
针对上述问题,本文提出基于分组讨论的程序设计课程教学改革实践,在传统教学过程中引入分组讨论,强调学生的主体能动性和教师的主导地位。以学生为主体,注重学生对教学活动的参与度,实现由被动型学习向主动型学习转变,培养学生的创造性思维。
一、程序设计课程教学中存在的问题
课堂教学活动既是教师传授知识的过程,也是培养学生基于计算机思维解决实际问题能力的过程。合理而有效地组织课堂教学活动,对学生学习积极性的提高和知识灵活运用能力的提升有着重要作用。当前部分本科院校在程序设计课程教学上仍然采用以教师为中心的传统知识讲授法和上机练习,在课堂讲授中,教师单向地将知识灌输给学生,学生被动接受,导致学生很难通过程序设计学习成为具备灵活思维和探索创新精神的计算机专业人才;上机练习中,学生独自开展上机程序设计,设计遇到的大部分问题都是通过学生向教师提问并得到答案的方式得以解决,学生之间缺少必要的上机实践互动,从而导致部分学生的问题求解思路单一、问题求解能力不足。显然,这一教学模式不符合人才培养需求。程序设计课程的传统教学模式存在的问题可以归纳为以下4点。
1.教学方法单一,学生学习热情不高。目前部分高校的程序设计课程教学仍然采用传统的讲授教学方法,多媒体教学设备也仅用于把相关理论知识和专业技术操作以演示的形式展示给学生。这种“填鸭式”的教学手段往往导致学生上课缺乏积极主动的思考,在教学环节中的参与度较低,缺乏学习的积极性。
2.侧重专业课程知识讲授,解决实际问题的实践教学不足。程序设计课程的学习内容相对分散且独立,同一课程不同章节的理论知识和实践存在联系不紧密的现象,实践教学不足。而很多问题又要求将这些知识和实践组合以构成一个强大的问题求解系统。部分学生缺乏灵活运用程序设计思维进行实际问题求解的能力。
3.课程内容繁杂,基础课程众多。程序设计作为软件构造活动中的重要组成部分,其涉及的先行课程较多,如高等数学、离散数学和数据结构等,学生对这些课程的掌握程度,将在很大程度上影响其对程序设计课程学习的效果。
4.课程评价机制不能很好地反映学生的实际能力情况。程序设计课程评价机制通常包含期末考试成绩和平时考核成绩,而平时考核成绩又体现为课堂出勤率、课后习题作业和上机实验成绩等。由于缺乏合理有效的课程评价机制,导致出现虽然学生取得了较好的课程评定成绩,但动手实践能力和实际问题求解能力不足的现象。
二、基于分组讨论的程序设计课程教学改革实践
(一)分组讨论模式的内涵
新课程改革理念的不断深入和完善,对课堂教学提出了更高的要求,以往单向的讲授法已然不能满足目前社会发展对计算机专业人才培养的要求,而教师与学生以及学生之间的合作交流日渐成为课堂教学的重要部分。分组讨论法顺应这一课堂教学发展趋势,其核心理念是把课堂时间合理分配给教师进行讲授和学生开展讨论,实现学生对所学知识的内化。分组讨论模式是将讨论引入传统讲授式教学模式中,充分发挥两者在程序设计课程教学中的优势[4]。具体来说,该模式既强调传统教学模式中教师教的主导作用,又强调在讨论中发挥学生的能动性。教师讲授在先,学生讨论在后,学生带着问题对课堂讲授内容进行讨论并完成预先设定的学习任务。此外,学生可以将讨论延续到课后以自行组织的方式来进行,根据自身的学习情况来决定对课程学习时间和精力的投入。
相较于传统教学模式而言,分组讨论模式的优点主要有以下3点:第一,充分调动了学生自身的学习积极性,增强了学生与教师、学生与学生之间的合作和交流;第二,通过小组讨论,培养了学生互助的团队精神以及独立的创新思维能力;第三,落实因材施教,引导学生自主学习,激发学生对挑战性和高阶性课堂内容的学习兴趣,促进教与学的和谐发展。
(二)分组讨论模式设计
分组讨论模式以学生分组讨论的形式进行课堂教学互动,能够极大地提高课堂教学对学生主体能动性的促进作用,提高学生在教学过程中的参与度;能够使学生的课前预习和课后自学落到实处,促使大部分学生能积极主动地思考、讨论并回答教师提出的问题,从被动的旁听者转变为积极的参与者。
基于分组讨论的程序设计课堂教学主要分为三个阶段:第一阶段是学生分组。分组任务由学生自行完成,每个小组人数控制在4~6人,强调各个小组问题讨论的评分与所在小组学生的平时成绩评定直接关联。教师审核各个小组分组情况并且做出必要的调整,公示分组情况以增强学生的小组意识。第二阶段是课堂分组讨论。在学生做好课前预习工作的基础上,教师先将本次课堂所涉及的知识和技术进行讲解,对学生预习中所涉及的问题进行答疑。教师将讨论题目和要求以板书或投影的形式展示出来,督促学生在相应时间内完成思考讨论。在讨论过程中,教师监督和激励学生积极地思考并讨论问题,及时对个别小组讨论内容进行纠偏。小组讨论完成后,教师按照预先计划指定1~3个小组对本组讨论情况进行讲解,每个小组可推荐1名学生代表发言,小组中其他学生做补充讲解,教师记录各个小组的讨论和问题求解情况。第三阶段是讨论主题总结。在讨论结束后,教师将讨论问题涉及的难点汇总讲解,并对小组回答问题的情况做简要概括。
(三)分组讨论教学实施要点
分组讨论的教学内容经过精心筛选和设计,能够极大地调动学生对程序设计课程学习的积极性。相较于传统教学模式注重知识的讲授,分组讨论更侧重于学生的沟通交流和创新思维培养,同时又有助于学生对讨论的问题形成深刻认识[5]。分组讨论的教学实施要点可以归纳为以下4点。
1.立足计算机的多学科交叉性。程序设计课程内容涉及计算机科学、数学、统计学和图论等知识,具有多学科多领域交叉融合的特点,基础知识覆盖面广,具有较强的理论性。通过对相关课程的学习能够使学生灵活地运用计算机思维方式来解决实际问题。
2.坚持问题导向的实践性。程序设计课程具有很强的实践性。在实际工作中,从业人员所遇到的问题往往是面向全新的环境和平台的,很难从教材中找到完全匹配的工程解决方案。针对这一问题,教师应将实际问题引入课程教学,培养学生解决实际问题的能力和创新思维。
3.紧跟技术发展的前沿性。为了更好地紧跟计算机技术发展步伐,学生需要了解和掌握有助于解决实际问题的前沿技术。在分组讨论的教学实践中,前沿技术的讨论选题应结合计算机学科发展态势和学生未来就业需求,同时兼顾本校教师的最新研究课题来确定。
4.主张课后学习的延续性。在分组讨论教学中,学生需要重视课后学习,即学生在课堂上对讨论问题有了很好的理解后,还应对讨论问题进行拓展思考,达到课堂分组论讨教学的持续性效果。分组讨论教学的后期,教师需要设计综合性较强的课程实验以驱动学生主动学习。
(四)分组讨论角色任务要求
在教学活动中,教师角色的主导地位一直是被肯定的,教师以合理有效的教学方式和管理手段完成相应的课程教学目标。分组讨论教学更加强调学生在学习中的主体能动性和教师在教学过程中的主导地位。在实施分组讨论的程序设计课程教学过程中,教师角色和学生角色有不同的任务要求,如图1所示。
任务要求
1.课前准备阶段,教师设计讨论题目、规划讨论流程。讨论题目作为分组讨论的核心内容,既要紧扣教材内容、突出重点和符合教学目标任务要求,又要保证讨论题目的新颖性,使学生能在完成题目要求的过程中,开阔创新思维和提高独立思考能力。此外,教师在问题的设计上还要考虑题目的难度和题量问题,以及在实施过程中注意把握好提问的时机和措辞,能够根据具体情况灵活提问。学生在课前自学教材和相关资料,遇到问题可开展课前小组讨论,记录尚未解决的问题,以便于在课堂上提问,由教师讲解或组织课堂讨论。
2.课中实施阶段,教师把控讨论方向、活跃讨论氛围。在分组讨论教学中,储备丰富的知识、随机捕捉和创设讨论契机是教师不可缺少的能力,尤其在学生讨论偏题时,教师应善于引导学生,使讨论沿着教师预先设定的目标发展。为了更好地参与讨论,学生应认真审题、搜集资料,并对资料进行有效整理、分析和概括,在发言时能够准确地讲述个人或小组的问题解决方案。此外,学生应做到全面且客观地评论他人的发言,促进相互之间的学习、交流。
3.课后延伸阶段,教师做好讨论总结。每次讨论结束后,教师要对讨论的问题有简明扼要和观点鲜明的总结概括。教师针对课堂讲授的知识,布置课后作业,督促学生通过完成作业以巩固所学知识。学生总结问题解决经验、复习和掌握延伸知识点。认真完成教师布置的课后作业,进一步提升自身技能。
(五)课程考核及效果
课程考核作为教学过程中一个不可或缺的环节,是衡量学生学习水平和考核教师教学质量的重要方式之一。良好的课程考核制度能够有效地督促学生学习,提高学生的问题分析与解决能力。课程考核包括课中讨论(30%)、课后作业(30%)和期末测验(40%)三个部分。其中,学生的课中讨论成绩由其所在小组课中讨论成绩决定,课后作业成绩由其作业成绩决定。
通过分组讨论教学改革,学生与教师、学生与学生之间的课堂互动显著提高,学生能较好地掌握基本的程序设计方法。学生用更多的课外时间来消化学习内容、查阅资料和完成编程练习,对课程内容的理解更为透彻,实际问题分析、解决的能力有较大提升。
三、结 语
程序设计课程知识内容具有抽象性和难度大的特点,学生在学习这门课程时既要学习理论知识,又要注重实践操作。针对传统教学中存在的问题,本文从分组讨论教学模式设计、分组讨论教学实施要点、分组讨论角色任务要求和课程考核四个主要方面进行了程序设计课程分组讨论教学改革实践,旨在提高学生自主学习、解决问题及团队协作的能力,能够为学生将来进入计算机相关岗位提供扎实的程序设计基础。
总体而言,基于分组讨论的程序设计教学法在教学过程中既能够发挥教师主导作用,又能够提高学生主体能动性,使学生的课堂参与度、沟通交流能力和创新思维能力得到显著提升。
[ 参 考 文 献 ]
[1] 阮梦黎.新工科背景下软件工程专业新模式研究[J].中国现代教育装备,2019(21):107-110.
[2] 宋丽华,张兴元,王海涛.基于函数式编程的计算机专业基础理论教学改革实践[J].计算机教育,2021(1):133-136,141.
[3] 周远,牧士钦.新时代高校实践育人精准化理念与模式探析[J].江苏高教,2021(10):104-108.
[4] 彭海艳,孟利军.集体学习和分组学习相结合的教学模式初探[J].教育现代化,2019(12):107-109.
[5] 周惠巍,林晓惠,王健,等.新工科建设中人工智能课程教学模式探究[J].计算机教育,2019(11):45-48.
[责任编辑:苏祎颖]