魏唯 刘威 董学阳
摘要:为了提高非计算机专业研究生的计算机实践能力,提出一系列Visual C++研究生课程的建设方案,从教学要求、教学大纲、教学方法以及教学团队等方面对课程建设进行探讨,突出对实际编程能力的培养,让学生能够真正掌握一门与专业紧密结合、适用性强的计算机编程语言。
关键词:研究生课程;Visual C++;课程建设;实践能力
中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2016)04-0180-02
一、引言
随着计算机技术的普及和发展,掌握一门计算机编程语言已成为高校各专业学生都应该具备的一项基本技能。Visual C++作为功能强大的可视化编程语言,是目前应用最广泛的Windows应用程序开发工具[1,2]。为此,我校面向各理工类非计算机专业的研究生开设了Visual C++课程,培养学生利用可视化编程工具去解决实际问题的能力。然而,受非计算机专业学生编程能力的局限性,学生在处理专业问题时仍然无法灵活地运用编程工具,造成这种现象的原因主要是Visual C++课程在整体建设方面存在一定的欠缺,背离了研究生教育的培养目标[3,4]。
为了深化研究生教育教学改革,造就高素质的计算机应用人才,本文提出对Visual C++課程的各项内容进行全面建设,结合各专业的人才培养目标建立教学大纲、选取合理的教材、更新教学内容、采用多样化的教学方法及突出实践的考核方式,同时加强教师队伍的培养。
二、教学要求
我校各专业在本科教学阶段均开设了“C语言程序设计”必修课程,可作为学习Visual C++的先修课程。虽然学生在编程方面并非“从零开始”,然而,大部分非计算机专业学生的动手能力和编程素质都相对较弱,这就要求教师充分调动学生的积极性,合理安排教学进度,让学生最终熟练运用Visual C++编程工具。
(一)培养学生的程序设计思维
Visual C++课程必须强调动手实践,特别是初学者在刚开始学习Visual C++的阶段是最困难的。针对这种情况,教学过程中应当深入浅出地培养学生的计算思维,从整体上理解Visual C++的编程思路,养成良好的编程习惯。
(二)教学内容做到系统性和阶段性协调统一
避免孤立地讲述各章节的内容,将教学内容按照功能划分成多个任务模块,选用身边熟悉的例子作为切入点,以通俗易懂的语言引出Windows应用程序开发的理论知识,各任务模块之间循序渐进,贯穿整个教学过程。
(三)精讲多练,注重教学实例的运用
在理论知识的讲解上做到弃繁从简、学以致用,尽量避免过多的理论叙述,而是围绕每个知识点组织一系列相关的实例,让学生快速看到编程效果,把握问题的精髓,做到仿效理解,提高学习兴趣。
三、教学用书的选取
我校各理工科专业的研究生教育侧重于培养研究型与应用型人才,因此,教材和参考用书的选取应当注重实用性,在适度坚持基本理论的同时反映出对基本理论和原理的综合应用,强调实践和应用环节,正确地把握研究生教育的改革方向。
我们选取《Visual C++程序设计与应用教程(第二版)》(清华大学出版社)作为教学用书,该教材立足于计算机公共基础课,满足非计算机专业的教学需要,其内容安排合理、环环紧扣,适合初学者快速掌握Visual C++的开发技巧。配套的辅助教材包含大量实例,是对教学内容的延伸和拓展,可供学生参考与自学。
四、教学大纲的制定
Visual C++课程共64学时,包括48个理论学时和16个实验学时,教学内容涵盖面向对象的机制、C++语言的基本要素以及MFC编程的全部内容,制定教学大纲时应合理安排各部分内容所占的理论学时与实验学时。理论教学内容要保证实用性和可操作性,避免难以理解的概念和很少用到的生僻内容。对于基本知识点,要求教师先进行原理性的介绍,再通过实例来讲解技术细节,让学生在自主探索和互动协作中学到新的编程知识。
实验内容应源于理论教学,并结合实际生活中的案例,增强学生对Visual C++程序的感性认识,让学生尽早进入实验环节。实验安排应当注重有序性,不能有太大的跨度,也不能本末倒置。按照学校的教学要求,实验学时在实验室内进行,学生每人一台电脑,每60个学生由一个指导教师进行全程的指导和答疑。初期阶段设计比较简单的实验内容,在学生已经掌握了一定的基础知识之后,设计一些简单的小型软件开发,后期可组织学生阅读一些项目的源代码,分析项目结构,培养学生的项目开发能力。
五、多样化教学法相结合
改变过去教为主、学为辅的“填鸭式”教学方法,采用任务驱动、阶梯式以及分组式等多样化的教学方法,充分发挥学生的创造思维和能动性,以提高该课程的教学效果。
(一)任务驱动式教学法
任务驱动是一种主动探究型的教学方法,强调学生的学习主体地位,突出任务的目标性,目的是让学生感受到成就感,增强自信心。
任务的设计要由简到繁,由易到难,循序渐进,不局限在书本上,更要具有一定的发散性,让学生充分发挥想象力和创造力。教师提出任务后不再主宰整个教学过程,而是引导学生去分析和探索,对学生完成任务的情况进行点拨和评价,其学习过程更为开放,能够更好地满足不同层次学生的学习需求。
(二)阶梯式教学法
Visual C++的教学过程应遵循循序渐进的原则,将教学分为几个阶段:
第一阶段为打基础阶段,应设置比较简单的实验内容,例如,在项目中只需添加一条语句就会出现相应的效果,让学生尽快熟悉Visual C++编程环境;
第二阶段让学生模仿教材上的编程实例做一些代码修改,举一反三地实现多种不同的实例,鼓励学生多想多问,帮助学生尽早克服畏难心理;
第三阶段中,教师可设置一些简单的任务,以便运用和巩固所学的知识点,通过一系列实验任务培养学生良好的编程习惯以及独立编程的能力;
第四阶段培养学生的团队合作精神,分组进行综合应用程序的开发,激发学生主动思考,寻找解决问题的办法。
(三)分组式教学法
对于综合编程任务采用分组教学,要求各组中的学生协同工作,开发出一套完整的应用程序,并将编程任务的完成情况作为小组的实验成绩评定。课堂上无法完成的任务可以让学生在课外继续互动,教师也可就各组的完成情况进行适当的指导。共同的目标可调动学生主动学习的积极性,培养团队精神,为日后走向实际工作打下良好的基础。
六、考核方式的改进
考核方式在很大程度上左右着学生的学习方式。Visual C++課程的实践性较强,过于理论化的考试对于掌握Visual C++编程技巧并没有益处,考核方式更应注重对实践能力的考察。
本课程采用理论与实践共同考核,且突出实践所占的比例,安排如下:(1)理论知识测试占20%,考察学生对编程理论的记忆;(2)程序分析与程序开发占50%,要求学生设计不同功能的小型Windows应用程序;(3)平时成绩评定占30%,包括课堂表现、课后作业以及分组完成实验任务的情况。
实践能力考核中可让学生抽取不同的题目,防止学生之间互相抄袭,学生只有真正理解Visual C++编程知识并熟练运用才能够通过考试,避免学生认为背诵例题就能够及格的侥幸心理。
七、教学团队的建设
我们专门成立了一支成熟稳定的Visual C++教学团队,团队在职称、年龄和教学经历方面自然形成梯队形式,负责人为具有丰富教学经验且师德高尚的研究生教师,团队成员均具有高级职称或博士学位,且具备较好的Visual C++基础以及不同程度的研究生教学经验。
我们在开课之前将组织教师进行集体备课,针对教学内容中的重点与难点进行教学方法的研究与探讨,总结出一套适用于Visual C++课程的教学模式和配套手段,以提高授课的质量和效果。此外,课题组定期组织教学交流活动,由有经验的教师传授教学方法,保证任课教师教学能力的全面发展。
计算机程序设计语言是不断发展的,教师必须积极更新自身的知识,除教材外,需准备一些常用的工具书,提高个人的知识量。教师还应该不断加强科研能力,增加项目开发的经验,成为一名Visual C++编程能手,更好地为教学服务。
八、结语
我们将在后续的研究生教学过程中对所做的课程建设工作进行反复实践,应用所提出的任务驱动式、阶段式及分组式教学方法及手段,根据制定的教学大纲开展全新的教学活动。在实践过程中,可以检验学生的学习兴趣是否有所提高、编程能力是否得到改善,并鼓励学生将所学的Visual C++编程技术应用于自己的研究领域,真正运用计算机编程工具去解决专业问题。
参考文献:
[1]龚丁海,谭松鹤.Visual C++程序设计教学改革初探[J].河池学院学报,2008,28(2):157-159.
[2]侯春望,薄迎春,宋曙芹.“Visual C++语言”课程教学改革研究[J].电气电子教学学报,2012,34(4):39-40.
[3]陈茹.关于《Visual C++程序设计》课程教学方法的探究[J].科技视界,2012,(29):121.
[4]杨素敏,张政保,王静,韩月霞.《Visual C++程序设计》课程教学存在的问题和对策探讨[J].现代计算机,2012,(2):24-26.