程序设计类课程实践教学方式改革研究

2015-12-15 02:13沈济南梁芳
教育教学论坛 2014年52期
关键词:实践教学改革教学理念程序设计

沈济南++梁芳

摘要:本文分析了计算机程序设计类课程实践教学存在的问题及其原因,提出了一种基于PC2的实践教学方法,并应用在C语言程序设计教学中。该模式有利于提高学生的编程兴趣,培养学生的实践动手能力和团队协作精神,为程序设计类课程教学改革提供了很好的借鉴。

关键词:程序设计;实践教学改革;教学理念

中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2014)52-0099-02

程序设计作为计算机专业入门级的基础课程,承担着帮助学生建立计算意识并为后续专业课程的学习奠定基础的任务[1]。程序设计类课程要求对理论和实验开展同步教学。实践教学作为理论教学的延伸与补充,可以弥补理论教学中学生动手时间过少而带来的不足,进而加深学生对理论知识的掌握。然而,在传统教育的影响下,目前大多数计算机程序设计类课程教学观念落后、实验教材单一、教学方式枯燥。课堂教学过多地注重知识结构,以知识点为单元进行教学;实验教学按照章节知识点进行,实验内容多为验证性。这种教学模式导致学生的动手能力及创造能力差,且学习积极性不高。本文针对程序设计类课程实践教学存在的问题,在C语言程序设计课程实践教学过程中引入PC2,对程序设计类课程实践教学改革进行尝试,以期提高教师的教学效能和学生的学习效率。

一、程序设计类课程实践教学现状

1.教学观念落后。实践教学停留在对课堂知识点、例题的验证上,实验内容缺乏,设计枯燥无味,实验过程按部就班缺乏新意,程序设计方法与解决现实问题严重脱节,不能提高学生的学习兴趣。

2.实验教材单一。实验教材不能很好地与理论教学紧密结合,大多教材的实验内容固定,与实际生活结合不紧密,不能灵活地依据学生知识掌握的情况调整。

3.教学方式枯燥。传统的实验考核由学生提交实验报告教师进行批改,一方面学生不能及时地获得实验结果评判,也不能当堂了解自己的问题出在哪里、如何纠正。久而久之,学生就缺乏了学习的激情,进而产生厌倦情绪,导致学习积极性下降;另一方面,大量的实验报告给老师带来了较大的工作负担。

4.教学互动缺乏。由于受到课程学时的限制,教师为了迎合教学计划,导致教学过程缺乏互动,教师“教”和学生“学”相对独立,师生之间沟通不够。

二、PC2简介

PC2是ACM/ICPC(ACM国际大学生程序设计竞赛)控制系统,基于C/S模式,用JAVA语言开发,可以运行在任何支持JVM的平台(Windows、Linux、Solaris等)。经过40余年的完善与发展,PC2得到了全球计算机同行的高度认可[2]。该平台包括服务器端、客户端、裁判端、竞赛端。在服务器端可以创建系统中需要的账户,账户主要分为:Administrator(管理员)、Judge(裁判机)、Board(排名实时统计端),Team(参赛队),Customer(观看者)。PC2可以根据需要配置选用绝大多数的编程语言的使用环境,能适用于各种不同程序设计语言教学。教师按照ACM/ICPS模式进行实验组织,将实验内容、时间要求、参考答案等配置好,学生分组进行实验,当堂检测学生的实验结果并获得实验成绩。图1为配置编程所用的开发C++语言环境界面,其他程序设计语言的配置操作类似。

三、C语言程序设计实践教学改革

在前几年的实践教学中,我们构建了以C语言课程知识点为主线的实验教学体系[3]。该实验体系以程序设计语言的语句语法体系为脉络,涵盖了C语言学习过程中的绝大部分知识点,包含C语言开发环环境、数据类型、控制结构、函数、数组、指针、结构体、共用体、位运算、文件以及链表等。目前,大多数C程序设计课程的实践教学中都采用了这种实验体系。在这种实践体系的教学过程中,大多学生能够按部就班,对知识点进行验证作为实验目的,循序渐进,能够对知识点进行较好掌握。然而,这种模式不能够让学生将知识点灵活地串联起来,大多学生的感受是知识点比较孤立,实验内容与日常生活中的实际问题联系不够紧密,从而导致自律性差的学生失去了自主学习、自主创新的空间,不利于学生编程能力的提高,不能很好地激发学生的学习兴趣。在以上实践教学的经验基础上,我们对C语言实践教学内容进行了修订,基于PC2平台进行实践教学,很好地解决了传统程序设计教学过程中存在的弊端。

1.教学内容的改革。对C语言实验内容进行优化整合:①强化程序设计的三种控制结构;②将顺序结构程序设计以及数据类型、运算符与表达式融入到其他的实验项目中,不再对单独的部分进行实验;③突出了数组、指针以及函数相互结合的综合型实验;④原实验教材中的验证型实验、理论教材的例题大部分留给学生作为课外实验进行练习;⑤新的实验内容注重与生活实际结合,尽量多出一些与日常生活相关的实例。

2.基于PC2的实践教学设计。将PC2用在程序设计类课程的实践教学环节,可以充分发挥PC2的优点,一方面能及时评判学生实验结果的正确性、运行时间、内存占用情况等,引导学生纠正编程过程中存在的错误,很大程度上激发学生的学习兴趣、提高学习效率;另一方面能减轻教师对实验报告的批改,使教师将精力放在教学内容的策划以及实验题目的完善上,提高教学效能。①组题。教师根据教学目标要求和课程教学的进度,结合学生实际水平设计实验题目。每次实验时间为100分钟,完成实验内容。在此过程中,教师针对具体的实验教学内容,选取难度合适的题目,并给出题目的结果格式、输入、输出以及结果等文件。②组队。突破传统的实践教学课程中每个学生单独实验的限制,参照程序设计竞赛组队形式,3个学生一组来进行实验项目,以培养学生的团队合作精神。每组成员由学生自愿组合而成,并要求有严格的分工,在不同的实验项目中充当不同的角色(如文档整理、算法设计、组织协调等)。③课堂组织。教师将学生队的用户名和密码、实验题目等在系统中进行部署。课堂上,学生根据自己队伍的用户名和密码进入PC2系统进行实验。教师充当裁判角色,可以阅读学生提交的程序并运行以检验结果,也可回答学生在做题过程中提出的问题进行互动。对于验证型的实验内容,可以设置系统自动评阅。自动评阅过程在组题的时候给出该题目的结果,系统在得到学生提交的结果时自动进行评阅。对于设计型及综合型的实验,可以采用手动评阅或者系统自动评阅的方式,教师在课堂上针对学生提交的文件进行评判。④实验结果。每次实验结果通过系统的Board模块排序出来,可以比较客观地反映出学生的水平。教师依据每次实验的结果为学生给出公正的实验成绩。

3.构建课程教学网站。为加强师生课外交流、引导学生自主学习,我们构建了专门的课程网站(http://ie.hbmy.edu.cn/cms)。通过该网站,老师按照教学周次把课程的全部教学进度及内容公布在课程网站上,学生根据教学进度获得相应的教学内容,进行交流和思考。在上机实践时,学生能对实验内容做到胸有成竹,有的放矢。也可以让学有余地的同学能够提前对知识进行预习、掌握。通过该网站,学生提交实验报告及其他作业,老师可以在线批改并给出成绩,师生互动效果良好。目前该教学网站在C语言程序设计和数据结构课程中已经使用,取得了良好的教学效果。

四、结束语

基于PC2的程序设计类课程实践教学方法改革,避免了传统程序设计类课程实践教学的缺点,一方面将教师从繁重的实验报告批改中解放出来,专心于教学内容设计,提高教学效能;另一方面能极大地提高学生的学习兴趣,使其树立良好的编程意识,从而提高学习效率。实践表明,经过近几年的实践探索,学生的编程兴趣得到了很大的提高,学校组织的程序设计大赛的参赛人数也逐年增加,为参加ACM ICPC奠定了坚实的基础,如表1。

今后,我们将基于C语言程序设计课程,继续加大程序设计类课程实践教学改革研究,完善实践教学体系,充分利用PC2平台和网络课堂,以期更好地为程序类课程实践教学改革服务。

参考文献:

[1]王志英,蒋宗礼,杨波,等.计算机科学与技术专业实践教学体系与规范研究[J].中国大学教学,2009,(2).

[2]董文永,冯敏,吴德敏,等.基于LAMP架构的在线评测系统设计[J].Third International Conference on Education Technology and Training,2010.

[3]吴斌,刘斌.编程竞赛控制系统(PC2)在教学中的应用[J].常州信息职业技术学院学报,2005,(3).

[4]叶斌,陈世强,沈济南,等.C语言程序设计实验指导与习题解答[M].北京:科学出版社,2011.endprint

猜你喜欢
实践教学改革教学理念程序设计
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
市场营销专业实践教学改革策略探析
基于“培养创新型机械工程师”模式的实践教学的探索与实践
高职高专院校C语言程序设计教学改革探索
新课标下如何提高初中物理课堂教学的实效性
小学数学教学良好课堂气氛的创建初探
高中数学教学中的“情景—问题”教学模式研究
职业能力视角下的高职语文教学策略探讨
以岗位胜任力为导向的水质理化检验实验教学改革初探