基于虚拟实验平台的计算机语言实践教学
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要计算机语言教学质量一直以来是广大师生共同关注的话题,本文针对目前计算机语言实践教学过程中存在的诸多弊端,以C语言实践教学为例,构建了一个集学习、实验、评价和测验于一体的综合性虚拟实验平台,大胆提出了一些基于该平台的教学手段和教学方法,提高了实践教学环节的质量。
关键词计算机语言虚拟实验实践教学Flash Exploration of Computer Language Practice Teaching Based on Virtual Experiment Platform//Xu Zhejun,Yu Shuyan
Abstract Computer language teaching quality is always a com-mon concern topic among teachers and students.Based on the defects of computer language practical teaching,this paper co-nstructs an integrated virtual experimental platform integrating learning,experiment,evaluation and test etc.with C language practice teaching as an example.The author boldly proposes some teaching means and teaching methods based on this pla-tform,and have improved the quality of practice teaching.
Key words computer language;virtual experiment;practical teaching;Flash
Author's address Zhejiang Post and Telecommunication College, 312016,Shaoxing,Zhejiang,China
计算机语言教学有利于培养学生的观察能力、分析归纳能力和创造意识,是计算机专业课程教学中的核心内容之一[1]。
然而,计算机语言具有抽象化和模块化的特点,学生接受起来有一定的难度,在高职高专院校大部分学生普遍存在的问题是:对命令格式不理解、语法不会用、算法不会做。
计算机编程本身具有很强的实践性,要保证实践教学环节的质量,就是要真正做到提高学生的上机动手能力、实际解决问题的能力以及知识综合运用能力。
但是学生初学时往往由于对实验的目的、内容理解不深,在上机操作时常常是盲目地把课本的例题作为上机实验内容,机械地编写、调试程序,并未真正理解程序中每一个语句所完成的功能以及语法,最终面对程序运行的正确结果而收获甚微[3]。
计算机语言教学一直是计算机基础教育的薄弱环节,如何迅速提高计算机语言教学效果和教学质量,是当务之急。
将虚拟实验和仿真技术运用于课堂教学之中是一种新的教学尝试,是将实验教学与课堂理论教学有机结合的一个新方向。
采用虚拟实验的教学形式有助于教学人员构建一种全新、多变的教学环境和教学手段,而且为学习者提供了一种可以进行交互、直观、自主探索的学习环境和学习方法[4],从而激发学习者的学习积极性,在多方面提高教与学的质量。
本文以流行的C语言实践教学为例[7],提出了一种全新的虚拟实验平台,并且探索了多种教学方法。
1虚拟实验平台介绍
所谓虚拟实验(Virtual Labotratory)是指由计算机技术、网络技术、计算机仿真技术、虚拟现实技术等生成的一类适于进行虚拟实验的实验系统,从而丰富感性认识,加深对教学内容的理解[2]。
本文提出的虚拟实验教学平台建立在Flash、C#以及Web技术的基础上,Flash完成虚拟界面的仿真任务,C#则提供了网络通讯的支持及后台系统的调用[1]。
该平台包括实训室专用平台和互联网辅助平台两部分。
其中实训室专用平台基于C/S结构,分为教师服务端和学生客户端。
教师服务端登录后拥有任务分配、程序自动评判、实验成绩统计、阶段性测验安排等权限。
其中程序自动评判功能借鉴了ACM程序设计竞赛的系统模式,通过C#调用C 编译系统,自动实现对学生提交的程序进行编译、运行和测试,然后将结果返回给学生。
其中测试结果有三种类型,分别是“Accepted”、“Wrong Answer”和“Compilation Error”,详见表格1。
在学生客户端则可以提交程序、查看实验成绩、完成单元测试以及基于虚拟实验的自主学习等操作。
学生端的操作界面主要基于Flash技术,这样能够更好地发挥Flash卓越的表现能力。
Flash中的数据通过Shackwave控件实现与C#的交互,再发送至教师端。
互联网辅助平台是一个基于B/S结构的网上教学系统,采用动态网站开发技术,将虚拟实验平台的部分功能移植至互联网,同时开通了在线学习、在线答疑、在线提交作业、在线批改作业等功能,突破时间和空间的限制,方便学生课
(浙江邮电职业技术学院浙江·绍兴312016)
中图分类号:G642.0文献标识码:A文章编号:1672-7894(2012)09-0061-02
表1三种测试结果
测试结果具体含义
Accepted 程序运行结果和测试数据完全一致,通过了测试
Wrong Answer 程序编译能够通过,但输出结果和测试数据不一致
Compilation Error程序无法编译通过
61
些教学方法,从而提高计算机编程课堂的教学质量。
2.1任务驱动法
相比作业等其他学习内容的组织形式而言,任务具有较好地聚焦知识片段的功能,适用于培养学生的创新能力和独立分析问题、解决问题的能力[9]。
在编程实践课中,任务驱动的教学方法是普遍采用的一种,但是由于条件的限制收效并不是很大。
在本文提出的平台的支撑下,教师不仅可以布置一些基础的实验任务、阶段性的实验任务以及综合性的实验任务,还可以分配有趣味的实例,比如“兔子问题”、
“猴子偷桃”、“水仙花数”、“百钱买百鸡”等[6]。
任务的目标很明确,就是“Accepted”,教学以学生完成任务为中心。
因为系统可以完成自动评判工作,老师就有更多的时间发现问题并予以指导。
为了避免学生之间的抄袭,系统支持随机地或者人为地抽取题目。
同时也允许学生在规定的时间内完成多个任务,给优秀的学生一个施展才华的机会。
这样学生在任务的驱动下能够集中精神去完成,让学生感受压力的同时也带来了很大的成就感,能够更好地调用学生学习的兴趣,促使他们更主动地去学习。
当然要使学生学会自我驱动,并不是一件轻松的事情,除了任务设置上具有趣味性和选择性等特征外,更为深层的方面在于,在教学过程中教师要不断引导和培养学生的成就动机,真正实现自我驱动和可持续式的学习。
2.2虚拟实验法
传统的教学中,教师在讲述C语言编程思想(比如for 循环)时,教师都要一步一步地在黑板上演示其执行过程。
这个过程不仅容易出错,而且在描述算法时,要求学生充分发挥想象力才行,必要时还要在黑板上比划,甚至做出各种身体动作,试图解释程序的内在工作原理。
如果碰到更为复杂的动态问题,比如C语言中的指针及链表处理的动态过程,教师几乎不可能用简单的口头语言来解释其工作过程。
采用流行的多媒体教学手段虽然丰富了课堂内容,但是同时也给学生理解带来了困难,没有时间消化吸收,结果仍然是“知其然而不知其所以然”。
在这个平台中每个任务都用Flash 技术实现了虚拟实验,形象地展示原理及运行过程,方便了教师的教学,也方便了学生自主学习,加深对知识的理解。
在老师教学的基础上,学生课后可以根据教学进度和自身实际情况,自主选择实验内容进行学习和操作,使学生处于教学的主导地位,掌握了学习的主动性。
2.3阶段测验法
刚开始学习编程,需要记忆大量的结构、语法、规范等,如果理论掌握不够扎实,就会影响实践的效果,因此在课程个虚拟实验平台中教师可以根据自己的教学安排设计好题目,同时附上答案,这样就可以让学生在实验室上机完成,学生提交后,系统将自动完成批改工作,教师端将自动生成本次测验成绩的统计结果,包括合格率、优良率、成绩排名、出错较多的题号等情况,极大地简化教师的批改统计工作,更全面地反映学生的实际掌握情况。
2.4网络教学法
随着校园网的建立和Internet在教学中的广泛深入,我们可以利用网络让课堂走出教室,走出实验室,充分利用计算机网络为教学服务,成为老师课外辅导、学生课外学习的一部分。
我们同样在互联网上搭建一个辅助教学平台,学生可以提交电子版的实验报告、可以提问、可以练习、可以复习之前学习过的实验内容,进一步巩固和消化。
教师可以在线批改、答疑、布置作业等。
网络的这种工具功能和桥梁作用是传统教学中任何一种教具所无法比拟的,它是我们教学中很好的辅助手段。
3结语
借助虚拟实验室平台,不但可以有效增强计算机语言初学者学习的信心,降低程序设计语言学习的枯燥感[8],而且有效缩短学习的周期,克服以往理论教学和实践教学脱节的情况。
在虚拟实验平台中有一整套的理论、实践和测试体系,帮助教师更好地完成教学任务,帮助学生更好地进行自主学习。
实践证明,这些做法不仅有利于培养学生的学习兴趣,而且有利于培养学生分析问题与解决问题的能力,教学效果良好。
我们应尽快认识到虚拟现实技术的应用价值,尝试在各个教育和培训领域中开发它、使用它。
参考文献
[1]庄贵霞.计算机语言教学方法初探[J].教育教学论坛,2010(11).
[2]饶俊.计算机虚拟实验浅析[J].实验科学与技术,2006(5).
[3]余冬梅.基于C语言的计算机语言类课程的教学方法研究与实
践[J].现代计算机,2010(8).
[4]杨宇,赵玉霞.基于虚拟实验的教学方法研究[J].福建电脑,2007(12).
[5]王琳,吉逸,等.基于Flash技术的虚拟仿真实验开发[J].电脑知识
与技术,2007(4).
[6]谭浩强.C程序设计[M].第三版.北京:清华大学出版社,2005.
[7]关忠仁.C语言教学质量的思考与实践[J].计算机教育,2007(3).
[8]干建松.基于Flash的C语言虚拟实验室开发[J].科技信息,2008(16).
[9]黄德芳.“任务驱动法”引导学生学习意识的提升[J].教育教学论
坛,2011(3).
编辑叶浩
62。