APP下载

基于ACM平台的C语言实验课程教学实践

2016-05-30陈荣钦王爱冬应建健

科教导刊 2016年2期
关键词:程序设计建构主义

陈荣钦 王爱冬 应建健

摘 要 以建构主义教学理论为指导思想,“台州学院在线程序设计综合实验平台”为桥梁的C语言实验课程,突破传统实验课程教学考几个方面的弊端,在教学各个环节中引入计算机自动评判方法,把传统的以“教师为中心”的教学模式转变成以“学生为中心”的趣味性和竞争性的自主学习过程,有效地将课内外教学和过程考核有机结合,极大地提高了教学效率。

关键词 建构主义 ACM平台 C语言实验课程 程序设计

中图分类号:G424 文献标识码:A DOI:10.16400/j.cnki.kjdkz.2016.01.064

C Language Experimental Course Teaching

Practice Based on ARM Platform

CHEN Rongqin, WANG Aidong, YING Jianjian

Abstract Constructivism teaching theory as the guiding ideology, "Taizhou University online program design comprehensive experimental platform" for the C language experimental curriculum bridges, breaking the traditional experimental teaching curriculum test several aspects of the drawbacks, the introduction of computers in all aspects of automatic evaluation method teaching, to put into traditional "teacher-centered" teaching mode "student-centered" self-learning process interesting and competitive, effectively combine inside and outside process of teaching and examination courses, and teaching efficiency is greatly improved.

Key words constructivism; ACM platform; C Language experimental course; program design; self learning

1 理论背景

建立在建构主义教学理论基础上并具有较强指导意义的教学方法有目标驱动教学法、任务驱动教学法和项目驱动教学法。目标驱动教学法是以目标为主线,学生为中心、教师为主导的一种教学方法。严惠新(2012)叙述了目标驱动法在“计算机基础”教学过程的设计原则和实施过程。张红波等(2011)以课程知识应用、企业需求和学生就业相关需求为目标,结合学生主观感受的体验式课程教学模式,充分调动了学生的学习积极性,有效利用了课堂时间,十分值得借鉴。同样,任务驱动教学法也颇受欢迎。所谓任务驱动教学法,就是以学生为中心,以任务为驱动的一种探究性学习和协作学习模式。其教学理念就是针对教学目标,教师设计教学任务,将所要学的概念、技能蕴含在所要解决的任务之中。黄美琼(2012)分析了“任务驱动,案列教学”教学法的实施方法和优势,并进行了教学设计举例。此外,(卞琛,2008)认为项目驱动教学法也是一种探究式教学模式,就是让学生在一个典型的信息处理的“项目”的驱动下,展开教学活动。引导学生由简到繁、由易到难、循序渐进地完成一系列“项目”,从而得到清晰的思路、方法和知识的脉络。胡孟杰等(2013) 针对程序设计课程传统教学中存在的问题,以强化实践能力和创新能力培养为目标,探索项目驱动教学法在程序设计课程教学中的运用。总之,三种理论殊途同归,都突出学生的主体性地位,强调学生分析问题和解决问题的能力,对C语言实验课程的教学都具有实质性的指导意义。

2 传统实验课教学模式的弊端和分析

通过对C语言实验课程教学的初步调查,我们发现目前大部分C语言实验课程教学还是采用传统的实验教学模式,这种教学模式普遍存在以下几个方面的问题。

2.1 “教”的模式落后

(1)教师布置的实验任务往往是实验指导书上的内容,学生容易依样画葫芦完成实验,缺少对问题的分析以及实验框架设计过程,对后续的项目设计能力培养尤为不利。(2)实验课程通常只要求完成规定题目,实验数目和题目数目均受到限制,由此造成了学生“代码量”严重不足,限制了程序设计能力的提高。(3)教师之间“各自为政”缺乏信息共享,没有利用好现有的优质资源和先进的教学方法,工作量大,但教学效果差。(4)教师除了在课堂上教学外,无法在课余时间监督和管理学生的学习状况。

2.2 “学”的方法不佳

(1)学生学习以“教师为中心”。只有在课堂上请教教师,但教师精力有限,往往无法在课堂解决所有学生的问题。由于缺乏交流平台,师生和生生之间很难形成良好的沟通交流机制。(2)学生的学习较为“被动”。低年级的学生普遍存在“被动性”接受知识的习惯,无法主动从互联网上搜集到优秀的学习资源并自主学习,需要教师在实验课程中给予引导。(3)由于低年级学生缺乏明确的目标,学习兴趣普遍不浓。相比于传统的教学,计算机游戏更具有趣味性和挑战性,易引起学生的兴趣,从而让学生沉迷其中,荒废了学业。(4)学生之间缺乏良性的竞争环境,学生的实验成绩往往在课程结束时才能知道。在完成实验内容的前提下,大部分学生没有深入探索的动力。而且实验课程没有良好的激励机制,学生之间又缺乏良性竞争,最终会影响整体教学质量。

2.3 “考”的机制不合理

传统实验教学主要通过考勤、实验操作、实验报告成绩、实验考试几个方面来衡量,这些指标缺乏“过程性”,教师只能在课堂或者一次考试中来考查学生,难以准确地衡量学生的真实能力和水平。因此,实验课程的期末考试应该通过实验操作来衡量。但由于缺乏优秀的平台,目前的实验考试往往因难以实施未被纳入课程考核,或者直接以卷面考试来代替。而卷面考试则往往以客观题为主,反映的只是学生死记硬背的能力,无法体现学生分析和解决问题的能力。

3 基于ACM平台的实验课程教学探索和实践

数据表明,结合ACM在线平台开展训练有助于程序设计竞赛成绩的提高。为了进一步扩大学生受益面,通过将ACM平台与C语言实验教学相结合,有效克服了传统教学的弊端,整体上大大促进了学生的程序设计水平。主要体现在以下几个方面:

3.1 资源共享,趣味引导,评判及时

(1)教师直接在实验平台上布置实验任务。平台中的实验任务本身来源于实际生活,极具趣味性。学生完成的题目提交到平台并由平台自动进行正确性检测后,实时地将结果反馈给学生。学生在接受到错误结果后可以继续修改并提交。这种方式避免了教师手工批改的“滞后性”和“不准确性”,也减轻了教师课堂的工作量,起到了轻负高质的作用。(2)教师可在平台中按照教学进度安排班级竞赛,竞赛题目具有各种难度值,充分考虑教师资源共享,为教师提供高效的题目选择方案。区分度良好的竞赛能保证学生在完成实验基本任务后,继续探索难题,成为推动教学的主要手段。(3)教师可在教学过程中引入“奖罚机制”。对于积极做题、参加竞赛、撰写解题报告的学生,平台会自动如实地给予积分奖励。而对于抄袭实验代码、实验报告的学生,教师要及时提醒并扣除积分作为惩罚,从而真正增加学生的“代码量”。系统对于用户提交的代码可以进行相似度检测,检测的结果都在平台中公示,保证学生学习的开放性和公平性。(4)教师可通过实验平台实时了解学生的学习状况。平台提供了班级学生的整体排名情况及每场竞赛的排名情况和积分奖罚情况等。教师可以查看班内学生每次提交的结果及其源代码,实时了解学生学习情况,并有针对性地为学生解决存在的问题。

3.2 自主学习,不断挑战,监督有力

(1)通过实践,学生改变了“以教师为中心”的学习习惯。当平台返回错误结果后,学生首先会思考原因,修正后再次提交。碰到棘手问题时,才考虑请教他人,包括班内同学、高年级学生、平台中的外校用户和任课教师等。平台中可以查看所有完成该题的用户,也提供了“论坛”、“讨论板”、“在线交流群”、“站内邮箱”和QQ群等多种交流方式。通过交流,既学习了程序设计,又进一步提高了沟通能力和团队协作能力,为后续项目实战能力奠定了坚实基础。(2)平台包含了大量不同难度的中英文题目,为学习提供了现成的丰富资源。主动学习的学生可以在平台中寻找相应水平的题目进行练习。对于“被动学习”的学生,除了完成实验所规定的题目外,还可根据列出的参考题目进行后续练习。平台也将根据学生的历史数据,智能化地推荐适合练习的题目,帮助学生循序渐进学习,切实打好程序设计基础。(3)平台具备极大的挑战性和趣味性。做题便会快速激发学生的学习热情,能够使其找到类似游戏的竞争感、成就感以及交友合作的快乐。平台还提供了“趣味竞赛”、“通关游戏”、“有奖竞猜”等娱乐功能,进一步提高了平台的趣味性。(4)平台提供了平时成绩实时换算功能,将学生的积分和做题情况等折算成学生的平时成绩,并给出了班级内部排名。学生可以实时了解自己平时的学习状况并及时加强练习,提高了学习的动力。整个过程体现了开放性和公平性。平台提供的代码检测和积分机制为公平性提供了有力的保障。

3.3 过程评价,实时记录,科学公正

实验课程重视过程考核,体现实践能力,形成合理、科学的实验考核方法。

(1)平时成绩不仅在于考勤和实验课内的表现,更重要的是在于课余时间的表现。通过平台,教师不仅可记录学生的考勤以及课内表现,学生课余学习的工作量、质量也能被客观实时地自动记录和评判。平时成绩与完成的正确解题数、参加竞赛情况、积分等挂钩,实时变化,充分反映学生的学习动态,通过学期累计客观考查学生学习过程。(2)实验报告通过平台来提交和批改。教师可快速查看班级学生报告的提交情况,经平台及时批改后,教师可对报告提交不及时的学生发送提醒信息。(3)实验考试(包括期中/末考试)采取类似竞赛的考核方式。整个考试过程由计算机自动判别并实时更新排名,每个学生都在紧张有序的做题中度过。考试中的源码可通过相似度检测,有效避免“抄袭作弊”等现象,使整个考试过程客观、公正、科学、合理。

4 总结

在建构主义教学理论指导下,基于C语言程序设计平台,使C语言实验教学改革试行取得了宝贵经验和成果。借助ACM平台,学生的学习兴趣和自主学习能力都得到了有效发挥,学会充分利用课内外时间,整合和挖掘学习资源,及时和他人沟通交流,有效地提高了程序设计能力。希望通过不断修正和完善教学方法,进一步提高C语言实验课教学的有效性,为国家输送更多高质量的计算机人才。

参考文献

[1] 严惠新.目标驱动法在《计算机基础》教学中的应用[J].福建教育,2012.6:195-197.

[2] 张红波等.目标驱动的体验式课程教学模式研究与实践[J].当代教育理论与实践,2011.8:60-61.

[3] 黄美琼.任务驱动的案例教学法在《计算机应用基础》教学中的应用[J].软件导刊,2012.11:203-205.

[4] 卞琛.项目驱动法在计算机专业教学中的应用[J].乌鲁木齐职业大学学报,2008.1:78-79.

[5] 胡孟杰,周丽.项目驱动教学法在程序设计教学中的运用[J].河南科技学院学报,2013.2:130-132.

猜你喜欢

程序设计建构主义
基于建构主义理论的计算机教育
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
借鉴建构主义思想培养财会专业人才
高职高专院校C语言程序设计教学改革探索
OBE理念下基于Greenfoot的Java程序设计课程教学改革
建构主义学习设计六要素在英语教学中的应用
建构主义教学模式在医学教学中的应用
PLC梯形图程序设计技巧及应用
三级甲等公立医院绩效考核程序设计