陈祥
摘要:传统的“程序设计”课程教学以教师为中心,教学方法、教学案例和评价方法较为单一,导致学生缺乏独立思考和创新精神。本文尝试从提升教学中学生的参与度、围绕计算思维重构知识图谱、引入个性化学习、主张程序设计训练的延续性等角度进行教学改革,提出了五项具体的教改措施,包括开展分组讨论教学、搭建实践教学案例库、建设智能学习平台、坚持以赛促学、实施多元化评价等,以期更好地培养学生的创新能力和计算思维能力。
关键词:程序设计;教学改革;创新能力
引言
本世纪以来,信息技术快速发展,大数据、物联网、智能计算等技术不断革新,在医学、金融、交通等领域都有广泛的应用,随着以ChatGPT为代表的通用人工智能技术的不断成熟,社会进步和经济发展迎来新的动力。信息技术发展如此之快,且未来仍有巨大的发展空间,需要有创新能力的人才推动技术的进步。因此,高校教育须强调创新能力,才能推动我国相关技术和产业保持国际竞争力。
“程序设计”类课程是专业基础课程,学生在这门课程中掌握编程的基本技能和方法,通过在项目实践中分析问题和解决问题,锻炼程序设计动手能力,同时提升逻辑思维、创新能力、团队协作能力、实践能力等多个方面的综合素质。为满足当前时代对创新人才的需求,必须不断强化“程序设计”类课程的教学质量,优化教学方式并推动教学改革。这不仅具有重要的时代意义,也具有现实的价值。
1. “程序设计”课程教学常见问题
1.1 学生学习热情不高
“程序设计”课程作为专业入门基础课程,学生在学习中经常遇到逻辑思维能力和抽象思维能力不足的问题,从而感到内容枯燥,学习难度大,学习的兴趣和耐力遭受了打击。究其原因,一方面是课程本身技术含量高、难度大,缺乏实际应用场景,缺少趣味性;另一方面是传统的讲授式教学方法往往是被动的,学生在教学环节中的参与度较低,缺少思考的主动性和学习的积极性。这就需要教师能够将枯燥的课程转化为学生感兴趣的内容,发挥强大的引导作用。
1.2 学生个体差异大
在现代大规模高等教育时代,大学为保证教学质量的可控性,倾向于在课程设置、教学大纲、实验大纲等方面趋同化,使用统一的教学资源和教学方法来培养学生。然而在实际教学过程中,学生个体差异大,具体表现在数学基础、英语基础、自学能力和编程经验等方面的不同,若忽略这些差异,仍按照统一的内容、进度、难度授课,不同层次学生之间的学习效果差异会更加明显,同时将导致学生的兴趣被忽略,学习积极性下降,个性化发展受限,打击了学生的创新创造能力。
1.3 教学方法单一
当前,部分本科院校在“程序设计”课程教学上仍然采用以教师为中心的传统知识讲授和上机练习,学生可能会失去尝试和探索的机会,限制了他们的思维和创造力发展。在课程讲授中,往往侧重于知识点的讲解,让学生理解语法的规则,展示语法的使用,但学生独立思考、探索和尝试的能力未能得到锻炼;在上机练习中,实践案例的层次和类型不够丰富,行业真实应用场景少,解题思路单一,学生的创新实践和动手能力未能得到锻炼。
1.4 评价机制单一
传统的课程评价机制通常包含平时考核成绩和期末考试成绩,而平时考核成绩主要由考勤、作业、上机等组成。这种评价机制的主要问题在于评价内容单一、评价标准过于功利,学生和老师都很容易陷入“应试教育”的泥沼中。传统的课程评价机制在一定程度上抑制了学生的学习兴趣和探索精神。學生更倾向于完成考核任务而非真正掌握知识和技能,同时也容易忽略课程中的其他重要方面。
2. “程序设计”课程教学改革要点
随着课程改革理念的不断深入和完善,传统的课程教学方式难以满足时代要求,要想让“程序设计”课程为学生创新能力培养打下良好基础,可从以下四个方面进行教学改革。
2.1 提升教学中学生的参与度
学习参与度是评估学生学习质量的重要指标,近年来提倡的项目式教学、研讨式教学、翻转课堂等教学理念都以学生高度参与作为教改基础。提高学生参与度的方法有很多,比如增加互动、激发兴趣、使用多媒体、设计有趣的任务等。
2.2 围绕计算思维重构知识图谱
“程序设计”课应避免过度强调程序设计的繁杂语法和规则、限制学生思维的主观能动性[1]。计算思维重视逻辑、抽象、推理、综合,强调对知识的深入理解,发现知识之间的关联和规律,通过对复杂问题的分解与解决,提升学习效率,提高创新创造能力。
2.3 引入个性化学习理念
个性化学习以反映学生个性差异为基础,可以帮助学生提高学习效率、兴趣和创造力。人工智能技术的发展使得为学生打造一对一的AI教师变得可行,基于大数据平台对学习者状态进行跟踪反馈,评估学习效果,引导学习方向,实施定向干预、精准教学。
2.4 主张程序设计训练的延续性
“程序设计”课程的学习,需要将实践教学活动延续到课后,持续提高程序设计的能力和水平。课下的实践包括完成老师布置的作业和练习、参与编程竞赛或项目开发、阅读优秀的程序代码或教材、与同学或老师交流经验心得等。
3. “程序设计”课程教学改革路径
课程教学改革是一项复杂的工程,涉及教育理念、课程目标、内容、实施、评价、管理等多个方面,需要以课堂提质增效为主渠道,以课后服务为落脚点,既要丰富教学资料,又需要辅以先进智能技术,还需要多种方式加强对学生的激励和考核。本文根据“程序设计”课程的特点,将课程改革路径归纳为以下五个方面。
3.1 开展分组讨论教学
分组讨论教学是一种以学生为主体、教师为引导者的教学方法,以小组作为课堂组织形式,将讨论作为课堂教学的重要环节,既能发挥教师的主导作用,又能调动学生的主观能动性。
“程序设计”课程的理论知识点多、案例场景多,涉及数学、统计学、数理逻辑等多学科知识,为激发学生的创新实践能力,往往需要引入生产环境的真实案例,锻炼学生分析和解决复杂工程问题的能力。在分组讨论教学中,可根据学生的编程水平和特点,以4~6人划分为一组作为评比单元,引导学生在课下预习所涉及的知识点,并拓展至关联的交叉学科和企业前沿问题。在讨论过程中,教师负责监督和激励小组成员思考和讨论问题,拓展学生的思维和视野,激发创造力和批判性思维[2]。
分组讨论教学较好地平衡了知识与技能、过程与方法、情感态度与价值观三大教学目标。教学过程中,不仅让学生掌握相关知识,还要运用知识解决问题,不仅关注结果,更关注过程,锻炼学生的自主学习、合作学习和探究学习能力,通过讨论和观点表达,培养学生的兴趣、自信、责任和尊重等情感态度和价值观。
3.2 搭建实践教学案例库
传统的“程序设计”课程案例主要来源于教材和教师自主设计,案例主要服务于课程知识点讲解,提供同步的巩固练习。由于课时限制、考核要求以及对应用领域的了解程度等因素限制,“程序设计”课程的案例往往基于过多的假设,对应用场景进行了预处理,过滤掉细节,提出过于明确的要求,使得程序的开发和评价变得简单化、统一化,学生只须根据教材知识点机械化地“照猫画虎”,降低了学习的兴趣[3]。
“程序设计”课程的教学案例应体现真实性、分层性、多样性,在实施中,可构建知识点案例、综合练习案例、实训项目案例和复杂工程案例四级案例库。知识点案例可以帮助学生掌握基本的语法和概念,通常只涉及一个或几个知识点;综合练习案例涉及多个知识点的综合应用,可以帮助学生巩固和运用所学的知识;实训项目案例更接近实际应用,通常涉及一个完整项目的开发过程,可以提高学生的编程水平;复杂工程案例是难度最高的,通常涉及一个大型工程的设计和实现,能够拓宽学生的视野,激发创新创造热情。
3.3 建设智能学习平台
实践教学平台是“程序设计”课程建设的重要基础设施之一。传统的实践教学平台让教师、学生、管理者等角色围绕作业、考试进行数据交互,趣味性探索性不足,知识引导性和串联度不高,实践项目的开放性和实效性不高。新时期平台的构建亟须从以作业考试为核心的被动压迫型平台转化为以激发学生兴趣的知识案例为中心的主动学习型平台,以学生为中心构建智能学习空间[4]。
智能学习平台是一种利用大数据分析和人工智能技术,为学习者提供个性化、自适应、互动的学习环境和资源的教育平台。平台支持多种类型数据源的接入、导入、标注、处理和存储,提供多种机器学习框架和算法的选择,为不同的学习目标和场景提供相应的模型训练,为学习者提供友好、易用、个性化的学习界面和资源,以及多样、实时、互动的学习反馈和辅导,打造优质、有趣、有效的学习体验[5]。
智能学习平台可以根据学习者的水平、兴趣、目标和进度,为他们推荐合适的“程序设计”课程和内容,通过智能评估、反馈、辅导和激励,帮助学习者检测和提高程序设计能力,培养他们的自信心和成就感。
3.4 坚持以赛促学
以赛促学、赛教融合是一种教学创新模式,将各类学科竞赛的资源、过程、评价等与教学相结合。以赛促学一方面培养学生的综合素质和职业素质,让学生在竞赛中面对更加贴近工程实际的挑战和问题,锻炼学生冷静思考、快速解决问题、团队协作、沟通表达等综合素质;另一方面可以推动教师的教学改革和创新,让教师在指导竞赛中更新教学内容和方法,结合竞赛资源和过程,打造一体化的教学服务。
为达到以赛促学的效果,须注重教学与竞赛资源融合,打造一体化的资源共享平台,利用竞赛中使用的平台、设备、仿真等资源,更新和丰富实验教学内容。在教学中,设计分层次的综合能力提升过程,采用基础题目、自选题目、课内比赛、课外竞赛等分层次的教学模式,让学生从简单到复杂,从基础到创新,逐步提高程序设计能力。同时,将竞赛评价融入课程,根据学生的兴趣和能力,给予不同的扩展题目和竞赛机会,让学生选择自己感兴趣的作品或竞赛参与答辩或评价,实现个性化的激励与分层次的考核。
3.5 实施多元化评价
课程评价机制的改革是一项长期而复杂的任务。在尊重传统的基础上,不断探索和创新,逐步实现评价的多元化、个性化。针对本文提出的“程序设计”课程教学改革路径,建议从自我评价、组内评价、教师评价、成果评价、知识与技能评价等五个方面开展评价。
(1)自我评价是学生对自己的学习过程和成果进行反思和评价。这种评价方式可以提高学生的自我监控能力,明确自己的优势和不足,及时调整学习策略和方法,促进学习效果的提升。
(2)组内评价是指学生对同组成员的学习态度和贡献进行评价。这种评价方式可以增强学生的合作意识和团队精神,让学生互相了解、尊重、支持、帮助,提高组内成员的参与度和责任感。
(3)教师评价是指教师对学生的学习表现和能力水平进行评价。这种评价方式可以反映学生的知识掌握程度和技能运用水平,让教师跟踪学生的学习情况,及时给予反馈和指导。
(4)成果评价是指根据学生的程序设计作品或项目进行评价。这种评价方式可以激发学生的创新意识和实践能力,将所学知识和技能应用于实际问题的解决,展示自己的思想和成果。
(5)知识与技能评价是指根据学生的程序设计知识和技能进行评价。这种评价方式可以检验学生的基础知识和核心技能,让学生掌握程序设计的基本概念、原理、方法、规范等。
结语
本文分析了传统教学模式中存在的问题,提出了基于创新能力培养的“程序设计”课程教学改革方案,包括开展分组讨论教学、搭建实践教学案例库、建设智能学习平台、坚持以赛促学、实施多元化评价等。当然,这些措施的落实更需要认真规划及教育者的支持,以通过这些改革,激发学生的学习动力、丰富学习资源和改善学习环境,使学生可以更好地掌握学科知识和技能,并培养创新精神和解决问题的能力,这些能力将对学生未来的职业发展产生积极的影响。
参考文献:
[1]王若龙.基于产出导向程序设计课程计算思维的培养探讨[J].中国管理信息化,2022,25(4):214-216.
[2]王寅同,赵向军.基于分组讨论的程序设计课程教学改革实践[J].大学教育,2022(12):97-99.
[3]张楚才,蔡美玲.实用项目驱动的程序设计课程教改[J].计算机教育,2022(9): 109-112.
[4]陈祥.新工科背景下交叉学科实践教学平台构建[J].科技创业月刊,2021, 34(10):108-111.
[5]曹莉,趙营颖,朱红磊.基于深度学习的交互式在线教学资源管理平台[J].信息技术,2023,47(2):24-29.
作者简介:陈祥,硕士研究生,研究方向:计算机软件与理论。
基金项目:2021年江苏高校“青蓝工程”优秀青年骨干教师培养对象。