陈苏海
【摘要】高校计算机公共基础程序设计课程实验教学存在着许多共性问题,分析形成原因,找出症结所在,从学校、教师和学生三个角度给出举措办法,形成合力。
【关键词】程序设计课程 实验教学 问题 举措
【中圖分类号】G640 【文献标识码】A 【文章编号】2095-3089(2015)12-0136-02
一、引言
程序设计课程是大学计算机公共基础课程体系中的重要组成部分,教学目的是让学生在掌握某种编程语言的基础上具备程序设计能力,通过程序设计实训加强学生的 “计算思维”[1-2]。实验是课程教学必不可少的重要环节,通过实验可以加深学生程序设计语言的“语感”,在集成开发环境中编写程序,掌握程序调试技术[3],在实际编程过程中发现问题、分析问题和解决问题,从而提升对“程序=算法+数据结构”的理解。就实际教学现状来看,存在许多共性问题,如教学对象为非计算机专业学生,学生的基础知识薄弱,学生独立编程能力不强;实验课时不够用等,本文针对实验教学出现的问题进行分析并给出一些教学举措。
二、存在问题及分析
1.实验项目内容缺乏统筹规划设计 实验项目一般和理论章节内容相对应,大多为孤立的验证性实验,缺乏系统性和关联性。实验内容单一,缺乏灵活性和多样性,给予学生独立编程、调试的时间有限。原因在于实验教学的思路和模式还是传统的灌输式、填鸭式教学,忽视学生的学习主体作用[4],没有做到“以人为本”和“与时俱进”,在实验项目内容的设计上没有创新性。
2.实验学时不够用 实验教学既要完成集成开发环境的使用、语言语法规则的验证、数据运算,变量的使用、函数的应用、程序控制语句的应用、数据结构等验证性内容,又要完成算法的设计分析,程序的编辑编译,在实验过程中学生还要对编译错误进行调试处理。有限的实验学时很难满足实验教学内容的需要。原因在于实验教学和理论教学定位不明确,本应在理论教学完成的内容纳入到实验范畴。
3.实验指导人手不够 公共基础实验教学大多是合班上课,学生多,程序编译出现的问题多,而实验指导老师一般情况下只有一位,很难满足实验教学指导任务的需要。原因在于教学的组织管理模式不对,通常实验指导教师就是理论课教学教师,没有统筹安排实验指导力量。
4.实验考核方式不合理 实验考核通常以实验报告或程序的运行结果为依据,考核目的是统计学生的平时成绩。这种考核方式工作量少、操作简单。其负面效用较为突出,学生为了追求成绩存在抄袭现象,脱离实际实验过程,反映不出学生真正的编写程序和调试程序的能力[5]。有的高校采用无纸化实验教学平台进行实验教学和考核,虽然考核形式不同,但其实质是一样的,问题同样存在。一方面在于制定实验教学大纲时没有考虑考核方式的合理性,另一方面在于实验考核的工作量不计入教师的教学工作量,很难调动教师的工作积极性和主动性。
5.实验效果不好 教学对象是非计算机专业新生,学生还停留在被动式的学习方式上,实验课前预习准备不充分,不明确实验目的,不了解实验内容,过重依赖老师的指导。实验教师在教学过程中没有充分调动学生学习的主动性,实验目的是让学生“做题”给出实验成绩,实验内容陈旧,很难引起学生的实验兴趣,实验教学效果不好。
三、教学举措
1.学校要给予政策上的重视和支持 实验教学是一个完整的教学体系,牵扯到学校的方方面面,要想提高实验教学质量,首先学校层面要重视实验教学,在政策上给予支持。针对不同课程的实验教学实际情况来计算教学工作量,不能实行“一刀切”。要有相应的激励政策和机制支持老师编写实验指导手册或实验教材、发表实验教学论文、开展实验教学项目研究等。对实验室的开放增大支持力度,将开放实验项目纳入选修学分,调动实验室和学生的实验积极性。
2.实验教师要明确实验教学目标 理论教学和实验教学虽然是相辅相成的,但在教学目标上还是有所区别的,理论教学的目标是介绍程序设计语言,针对某一问题建立模型、设计算法和编写程序,培养学生的“计算思维”。实验教学的目标是集成开发环境的操作,在实际环境中验证程序的正确性、健壮性等,让学生学会程序的调试,教学重点是解决程序编译错误。在实际教学中一些教师的教学思路和模式仍然沿袭理论教学,认为实验就是理论的“验证”和“补充”,不重视实验教学研究。这样势必会影响到实验教学的质量和效果。要解决目前实验教学存在的问题,最重要的是实验教师要明确教学目标,重视实验教学研究。
3.做好实验教学的“顶层设计” 实验教学的“顶层设计”体现在实验教学大纲的制定上,大纲的制定不能“闭门造车”,要考虑学生的基础和水平,要对实验项目内容进行系统规划,增强实验项目的关联性和整体性。验证性实验如开发环境界面的熟悉、数据类型及数据的运算、系统函数的使用等不要占用过多的实验课时,现在台式机和笔记本在学生中普及度很高,这部分实验可以让学生在课外自行验证。综合设计性项目要有实验前的准备说明,明确要掌握哪些知识,要设计好算法和数据结构,要有课前的检查过程,避免学生盲目上机。实验内容要多样化,贴近现实生活,这样才能让学生“举一反三”,增加学生的实验兴趣。实验考核形式要灵活多样,对部分综合设计性实验要采用过程考核。设计好指导手册的编制,每次实验的课前准备、实验内容、实验步骤、实验总结、程序的调试等都要体现在指导手册上。实验教学大纲要随着计算机技术、实验环境和实验参与者的变化而不断的更新和完善。
4.调动学生参与实验指导的积极性 许多高校实行“分组”式实验指导管理,一方面可以解决人手不够的问题,另一方面可以充分调动学生的积极性。但是要加强对“分组”的管理。组长要根据实际情况进行轮换,让更多的学生了解实验指导工作,同时增长了自身的实验能力。难度较大的实验可以设有预做内容,让小组在课后完成,实验前由老师集中对组长进行检查指导,这样可以起到“以点带线、以线带面”的效应,大大提高实验教学效率。
四、结语
实验教学在不同学校和不同学生群体出现的问题是不一样的,但对于共性问题,需要高校和教师加强实验教学研究,改革实验教学模式[6],形成学校、教师和学生三方合力。
参考文献:
[1] 杨梅,王杨.以计算思维为导向的程序设计基础课程教学研究[J].计算机教育,2015(16):94-97.
[2] 吴蕾,钦明皖,杨勇.基于计算思维能力培养的程序设计基础课程教学新模式[J].计算机教育,2015(7): 1-3.
[3] 赵占芳,刘坤起,赵致琢.“高级语言程序设计实验”课程的教学问题探讨[J].工业和信息化教育,2014(12): 34-39.
[4] 蔡长安.《程序设计基础实验》研究型教学探索[J].实验科学与技术,2013(2):89-91.
[5] 黄宏博. 三重驱动模式下程序设计实践能力的培养与提升[J].高教学刊,2015(18):230-231.
[6] 刘在英,杨平,张丽晓.程序设计课程实践教学模式的探讨[J].实验室研究与探索,2013(10):156-159.
基金项目:江苏省现代教育技术研究课题“非计算机专业程序设计类课程教学改革与实践”