“Visual C++程序设计”课程教学改革探讨
2016-11-19范大娟杜青王丹华
范大娟 杜青 王丹华
摘 要:该文针对“VisualC++程序设计”课程的教学现状及其存在的问题,并结合应用型本科院校的特点,从教学方法、实验环节和考核评价等几个方面提出了教改的基本思路和方案,克服传统“Visual C++程序设计”课程教学的不足,提高课程的教学质量和效果。
关键词:应用型本科院校 Visual C++教学改革 改革探讨 评价体系
中图分类号:G64 文献标识码:A 文章编号:1674-098X(2016)02(a)-0153-02
Visual C++作为功能强大的可视化应用程序开发工具,已成为国内高等院校计算机相关专业培养方案中的重要教学内容。Visual C++具有程序框架自动生成、灵活方便的类管理、代码编写和界面设计集成交互操作、可开发多种应用程序等优点[1]。然而,由于MFC类库的庞大,利用应用程序向导AppWizard生成的程序专业化程度高,代码量大,结构复杂等原因,初学者往往难以理解和掌握[2]。该文通过分析传统VC++程序设计教学中存在的不足,针对应用型本科院校对培养兼具理论基础和实践能力的应用型人才的需求,探讨了“VisualC++程序设计”课程教学改革的方法。
1 传统“Visual C++程序设计”课程教学的缺点
通过自身教学观察和分析,传统“Visual C++程序设计”教学的缺点主要表现在以下几个方面。
1.1 教学方法方面
传统的“Visual C++程序设计”教学仍停留在课堂理论教学阶段,多采用板书和PPT相结合的教学方式来讲授编程方法及使用过程,强调理论教学,实践教学环节相对薄弱,往往忽略了“Visual C++程序设计”课程面向工程的特色[3],不能很好地将理论教学和实践教学结合起来。这种传统的教学方法对理论性比较强的程序设计课程比如“C程序设计”“C++程序设计”比较合适,但对于“Visual C++程序设计”课程,容易增加学习的枯燥感,造成教学效果不理想。
1.2 学生方面
学生大多延续中学的学习模式,对教师的依赖程度过高,被动地接受知识的传授,而没有发挥学生的主体性,不懂得自己主动学习,不能适应“Visual C++程序设计”课程实践性强的特点。此外,学生往往养成应试教育下的学习习惯,将精力主要放在基本概念的记忆以应付考试,而忽视了自己动手实践、动手参与实际项目的重要性,从而导致学生不能真正理解和运用课堂上所学的理论知识,学习效果不理想。
1.3 教学组织和实验教学方面
“Visual C++程序设计”是一门工程性和实践性很强的课程,然而“Visual C++程序设计”课程内容多而课时有限,且实验课时一般只占到总课时的1/3。实验课时少,实验环节不够重视,在选取“Visual C++程序设计”实验项目时往往采取照搬教材上现成的例子和实验指导手册上实验题目的做法,导致学生机械地按照教材或实验手册上提供的步骤和代码完成实验,而不明白为什么这样做的原因。教师验收实验项目时“重结果,轻过程”,只需要学生完成该次实验即可,无法考察学生的编程思路以及独立解决问题的能力,导致实验效果不理想。
2 “Visual C++程序设计”课程教学改革
通过分析和总结传统“Visual C++程序设计”课程教学的缺点,并针对应用型本科院校理论与实践相结合的办学理念,在教学过程中摸索出“Visual C++程序设计”课程的教学改革方案。从教学内容、教学方法、实践环节、及考核模式等教学环节的各个方面进行改革优化,以达到“Visual C++程序设计”课程教学目标,提高课程教学质量。
2.1 引入项目驱动式教学方法
提出一种基于项目驱动的“Visual C++程序设计”课程教学方法,这种方法的核心思想是以项目为主线[4],通过项目实践促进Visual C++编程知识的学习,提高应用型高校“Visual C++程序设计”课程的教学质量。
在课堂教学中,选取的项目最好是实际应用中常见的场景,且能够覆盖该次课堂教学的重要知识点,体现出Visual C++编程的方法和过程。比如在讲解“按钮控件的使用”时,可以选择“问卷调查”项目,在讲解“编辑框控件的使用”时,可以选择“计算器”项目等。遵循循序渐进的原则,在每一章结束之前,选择一个规模较大的、综合性的项目将该章所有部分的知识点串联起来,比如“学生成绩管理系统”。此外,在讲解项目时,可以通过动画的方式将项目的开发过程一步一步演示出来,以加深学生的印象。采用这样的项目驱动式教学方法能够大大激发学生的学习兴趣,避免了以理论学习为驱动的教学方法带来的弊端。
2.2 加强和优化实验环节
由于“Visual C++程序设计”课程实践性强的特点,学生只有通过大量的上机实验练习才能消化和巩固课堂上所学的理论知识,因此实验教学在整个“Visual C++程序设计”课程教学过程中处于非常重要的环节[5]。如何有效利用有限的实验课时来达到实验教学目标是非常关键的。尝试对实验环节进行改革和优化,分层次、分难度地精选合适的实验项目,根据实验项目由易到难的次序将实验环节划分为3个部分。
(1)基础性实验—该类实验项目主要是教师课堂教学中选取项目的扩展,学生根据课堂上教师所讲解和演示的项目开发过程,由学生模仿类似的思路和开发步骤完成该类实验项目,这个实验环节主要侧重于训练学生熟悉Visual C++编程套路,并提高其基本动手能力。
(2)操作性实验—根据实验教学大纲的内容安排,针对每一次实验内容,精心选取相应的验证类、设计类实验。①上机实验前由教师给学生布置实验题目,让学生实验前先作好准备,有充足的时间独立思考如何编程。②在上机实验过程中,要充分发挥学生的主体作用,教师也要给予适当的指导,引导学生利用Visual C++编译器的提示信息或单步调试等方法发现存在的问题,最终由学生在教师的指导下按照自己的思路完成实验。③在上机实验结束时,针对上机实验的内容布置相应的思考题,促使学生利用课余时间自主思考、总结上机实验,深入理解代码含义。这个实验环节旨在培养学生应用所学知识进行Visual C++程序开发、调试能力,并提高其独立分析、解决问题的能力。
(3)课程设计实验—为了使得课程设计与后续的毕业设计可以较好地衔接,在课程设计时给出几个综合性实验题目,比如多媒体类应用程序、基于Internet的应用程序以及数据库应用程序等,作为毕业设计的前期知识准备,由学生从这些综合性题目中进行选择。学生以小组为单位承担教师下达的课程设计实验,在小组内部集思广益,每组组长负责该组实验任务分工,课程设计结束时,教师根据每位学生的完成情况,对课程设计实验进行验收、评价。这类课程设计实验用于强化学生综合运用Visual C++编程知识独立开发、调试综合性和复杂性的应用程序的能力。
2.3 建立公平全面的考核评价体系
传统的“Visual C++程序设计”课程考核评价按照理论课考试占70%,平时成绩和实验成绩各占15%来计算总评成绩,这种评价方法偏重于理论知识的考核,会导致学生为了应付考试死记硬背课程知识,缺乏实际的编程能力,难以客观反映出学生的真实水平。针对此问题,对“VC++程序设计”课程的考核评价模式进行改革,对学生进行多方位的考核评价,特别是对学生实践能力的考核。
(1)课程考试成绩占总评成绩的70%,分为理论知识考核和上机实践考核两个部分,理论知识考核占课程考试成绩的40%,主要考查学生对Visual C++基本知识比如事件驱动、句柄等概念的理解和掌握。上机实践考核占课程考试成绩的60%,主要考查学生根据上机题目要求,利用Visual C++开发环境进行编辑、调试并最终设计出能够正确运行并满足指定功能要求的程序的能力。
(2)实验成绩占总评成绩的20%,教师根据每次实验课学生的程序代码质量、出错信息、程序调试以及实验报告的完成程度等学生实际操作情况进行打分,最终实验成绩根据所有实验课的成绩进行综合评定。
(3)平时成绩占总评成绩的10%,主要根据学生的出勤情况、有无早退迟到现象、书面作业的完成质量、课堂提问等方面进行综合评分,重点可以考查学生的课堂积极性、回答问题等情况。
3 结语
针对传统“Visual C++程序设计”课程教学的缺点,通过引入项目驱动式教学方法、加强和优化课程实验环节、建立公平全面的考核评价一系列课程改革方案,克服了传统“Visual C++程序设计”课程教学的缺点,充分调动了学生自主学习的积极性和教师传授课程知识的热情,以达到“Visual C++程序设计”课程教学目标,提高课程教学效果。
参考文献
[1] 黄维通,贾续涵.Visual C++面向对象与可视化程序设计[M].北京:清华大学出版社,2011.
[2] 戴磊.如何提高应用型高校“VC++程序设计”课程的教学质量[J].中国成人教育,2009(21):176-177.
[3] 杨平乐,张勤阁.VC++课程教学工程化的改革与实践[J].江苏第二师范学院学报(自然科学),2015,31(9):39-43.
[4] 朱明华,揭安全.基于任务驱动的高级语言程序设计课程改革[J].计算机教育,2011(13):19-21.
[5] 陈建平,刘维富,邱建林,等.Visual C++程序设计课程建设研究与实践[J].计算机教育,2007(6):18-20.