- 收藏
- 加入书签
基于MOODEL的教学实践—竞赛一体化编程能力培养体系的构建
摘要:结合我校程序设计类课程目前的的教学和编程能力培养中存在的问题,提出构建基于MOODEL的教学实践—竞赛一体化程序设计能力培养体系,同时借助MOODEL的自动评测系统也可以帮助教师实现在移动环境下的程序设计类课程的教学改革。
关键词:Moodel;教学实践;一体化;自动评测
1 背景
程序设计能力就是利用计算机解决实际问题的能力,是新工科专业学生需要具备的基础实践能力[1]。在整个课程体系中至少开设2门以上。可目前的程序设计类课程都面临着基本概念抽象,语法枯燥繁琐,结构复杂,代码反复改错等问题。虽然在学生编程技能培养方面,我们做出了很多尝试和探索,例如翻转课堂,基于慕课的线上线下的混合教学,也有了一定的起色,但目前的常规理论课堂教学方式仍以课堂教学为中心,以验证型实验和课后作业为辅助,这样的培养模式依然存在着课程内容理论化严重、不能结合学生学习特点、专业特色实现个性化培养等问题。Moodle 是一个基于模块化设计,采用面向对象方式开发的课程管理系统。国内外学者对于Moodle在教学中的运用主要集中在信息化教学、体育与健康教学、英语教学、网络教学平台等方面。例如:Nalli Giacomo(2021)[3]指出Moodle是模块化面向对象的动态学习环境,当前在国际教育中Moodle是进行信息化教学的主要平台。
基于Moodle技术设计的网络教学平台体现了现代教育理念,是一个符合时代教育需要的教学平台,在这一平台当中,教师能够有效地融合理论教学工作和实践教学工作。郝淑颖(2019)[2]Moodle研究网络信息化教学,指出网络课程的设计是信息化教学平台设计的重点及难点,特此强调了网络课程的设计原则、前期分析和设计过程。综合来看,现有的研究对于基于Moodle对学生程序设计能力培养的研究较为匮乏。
从教学实践上看,Moodle平台可以为当前的程序设计类课程教学提供两大类教学工具。第一类教学工具是课堂教学活动,学生可以借助这类教学工具进行各种互动式操作,[4]提升课堂的参与度,便于调动学生积极性;另一类教学工具是移动教学资源,教师通过该工具,可以将手中的各种信息化资源发布给学生使用,打破以往实验课均为理论课堂知识点的验证性实验常规,结合实际生活中的实例进行进行设计实验环节。移动学习方式也可以让学生随时随地利用碎片化的时间进行学习。这对于培养学生程序设计能力,打造竞赛一体化程序设计能力培养体系具有良好的效果。
2 教学实践—竞赛一体化程序设计能力培养体系
以我校为例,新工科背景下各专业的融合让程序设计类课程得到了更大的普及。如何能针对不同专业背景的学生进行有效的能力培养,并打造完整的培养体系是我们教师应认真考虑的问题。首先我们应分析学生的程序设计能力培养现状,发现当前学生的程序设计能力培养中存在的问题以及问题形成的原因。其次结合学生在程序设计类课程学习中出现的问题进行能力层次划分,最后利用MOODEL平台引入学科竞赛机制,打造竞赛一体化程序设计能力培养体系,从而促进学校教学的改革与学生程序设计能力的提高。培养体系的构建主要从以下几个方面开展:
(1)促进课程教学改革。
新工科背景下程序设计类课程主要覆盖《程序设计基础》、《C++程序设计》、《JAVA程序设计》《PYTHON程序设计》等。首先,理论课堂可结合学生的实际进行教学内容的分模块设计,同时使用基于MOODEL设计的自测平台课统计分析学生对每个知识点的理解和掌握情况并能帮助教师更好的调整教学的难度和进度,让学生在理论课堂上通过移动端实现边学边实践。其次,在实践教学过程中,长期以来是以教学班级为单位由任课教师自行负责管理的,学生的所有实践均为单机编译测试阶段,考核方式也仍采用笔试考试。学生的实践动手能力不能提升,参与相关学科竞赛时成绩无法提高,通过体系的构建能以Moodle平台为助力,以项目驱动教学为核心理念,培养学生的实际操作能力。平台对学生开放后可以促进学生在课下的学习效果检验,同时也可以上传学习资料供学生进一步学习。以程序设计基础为例进行教学内容分层改革,如图1所示
(2)培养技能型软件类人才。
针对当前创新型人才培养的需要,结合大学生程序设计能力的培养模式,将竞赛机制的分层模式引入程序设计的理论和实践教学中,构建了自己的分层次测试系统。该系统将程序设计的教学和实践紧密结合一起,将所有模块划分为入门-初级-提高-进阶-登顶5个层次。以学科竞赛为目标驱动进行构建,将学科竞赛的挑战机制及评分机制引入,形成了多层次的培养体系。具体体系结构图如图2所示。
学生通过这种分层进阶的培养体系进行知识的学习,技能较好的掌握基础语法知识及数据结构也能能熟练运用各类语言解决日常问题。学生可以根据MOODEL平台上的数据分析,教师的学习资料,集合自己的学习情况及知识需求点订立学习目标并打造属于个性化的学习方案,可使用移动平台进行自主学习。通过培养体系的搭建将学生进行分层次的教学,根据专业需求进行培养,根据学生学习能力及知识需求点进行教学,真正做到因材施教。可以让基础薄弱的学生能有多种方式选择多重课程进行基础巩固,也可以让程序设计兴趣更浓的学生更自主的攀登更高的知识顶峰,从学习中获得成长。引入学科竞赛奖励模式可以提升学生的学习主动性、软件开发能力、培养良好的开发习惯,为从事计算机编程、软件测试及相关行业的工作打下良好基础。也能在一定程度上提升学校的科学竞赛的参与度。
3 基于MOODEL的自动评测系统的设计与应用
为了实现教学实践—竞赛一体化程序设计能力培养体系,我们基于MOODEL平台设计适合我校的自动评测系统,自评系统与普通基础题库不同,用户角色可分为非注册用户、教师、管理身份和学生身份。管理员的功能包括登录、公告管理、查看前台数据、用户管理、问题管理、竞赛及作业管理、系统管理和常见问题管理。非注册用户可以登录、查看排名和基本问题功能。注册学生可以登录、查看各级题目、提交代码、参加竞赛选拔、查看排名、学习教学资源,查看相关教学连接,参与线上教学活动等;教师可以登录、管理作业及竞赛题目可以上传教学资源,发起讨论活动,收集活动数据,导入题目,回答学生留言、查看排名等。
整个系统的核心即分层在线评测和线上教学活动的开展。首先在线测评可以让初级入门的学生体会编程带来快乐,活学活用自己的所学,也可以让有基础编程能力的学生逐步提升自己的编程技能,让相关参加竞赛的学生能得到相应的实训内容,这种全方位的分层培养,有利于因材施教;同时自动评测系统是可以24小时开放,避免了实验课结束后学生无法学习的问题;通过分层和竞赛实训机制能极大程度的激发学生的编程热情,自动评测也减轻了教师评阅的负担,也帮助教师进行了学生编程能力的统计及学科竞赛的参赛选拔。其次,线上教学活动的开展,能直观的反馈学生的学习情况,加强教师与学生的线下和线上的教学互动,在课堂上可通过平台发布思考题、抢答题等方式调动学生学习积极性,通过积分奖励制度让学生能主动参与课堂教学,课堂下也可通过平台实现教师与学生的沟通,通过讨论、案例分析、微视频学习进行知识点的复习和巩固,再搭配上相应的测试内容就能让学生和老师了解自己的学习和教学情况,帮助学习和教学的提升。真正实现了教学相长。
4 结束语
通过构建基于MOODEL的教学实践—竞赛一体化程序设计能力培养体系,能让学生从零基础入门,从基础语法到问题解决思路都能有一个系统的培养训练,能实现每个不同层次、不同专业的学生都能有程序设计能力的提升,具备程序设计的思维及创新思维。大数据时代,大学生的程序设计能力将作为衡量实践能力的一个基本标准,如何能更有效更快速的提升学生编程能力还有待进一步探索。我们将继续将体系进行完善,将基于MOODEL的自测平台功能进一步完善和提升,能真正实现程序设计类课程的全方位教学改革,学生综合实践能力的提升。
参考文献:
[1]韩建民,王丽侠,叶荣华. “教学-训练-竞赛一体化”程序设计能力培养体系的构建[J].计算机教育2017
[2]郝淑颖.基于Moodle平台的的信息化教学平台的研究[J].电脑编程技巧与维护,2019
[3]易灿.基于Moodle网络教学平台设计与实现[J].电子测试,2016
[4]陈娟,顾吴华.Moodle平台在信息化教学中的应用[J].电脑知识与技术,2015
[ 武汉文理学院2021年校级教(科)研立项项目2021xk06研究成果]
胡艳蓉[ 胡艳蓉,武汉文理学院 教师]
陈曦[ 陈曦,武汉文理学院 教师]