书城社会科学研究型大学建设本科教学改革的研究与实践
19080000000078

第78章 教学内容与课程体系改革()(19)

关键词:教学质量 Visual C++程序设计 探索 实践

“高等学校本科教学质量与教学改革工程”(简称“质量工程”)是我国在高等教育领域实施的一项重要工程,是新时期深化本科教学改革,提高本科教学质量的重大举措。提高高等教育质量,人才培养是核心,本科教学是关键。不断提高课堂教学质量,推进本科教学工作是所有高等学校教师应尽的职责。本文结合笔者的教学工作实践,探索如何提高面向通信工程专业学生开设的“Visual C++程序设计”课程的教学质量。

一、对课程准确定位,明确培养目标

众所周知,通信技术与计算机技术的发展是相辅相成、密不可分的,因此对通信工程专业学生的计算机水平和能力历来都有比较高的要求,特别是需要具有比较强的程序设计能力。“Visual C++程序设计”是面向通信工程专业学生开设的选修课,属于“工具级”程序设计课程,旨在培养学生利用工具开发应用程序的能力。

Visual C++是C++语言的集成开发环境,采用“面向对象与可视化程序设计”技术,可以用于各种应用程序的开发,功能十分强大。对通信工程专业学生而言,无论是在本科阶段的课程设计、毕业设计等教学环节,还是在毕业之后从事专业技术工作或研究生阶段从事科学研究,这一工具都具有广泛的用途。

因此,我们将“Visual C++程序设计”课程定位在“学生从实用技术角度学习计算机程序设计的主要课程”,主要的教学培养目标是使学生深刻理解“面向对象的程序设计方法”的基本思想,熟练掌握使用API 函数和MFC 进行“可视化”编程的基本过程和方法,同时在教学过程中做到“授人以鱼,更要教人以渔”,引领学生体验和领悟利用计算机程序设计工具解决实际问题的思路和方法,努力培养和提高学生在本专业领域中应用计算机解决实际问题的能力与水平。这对于学生的终身学习和主动应用计算机都是至关重要的。

我们的教学实践表明:对课程进行了准确的定位,明确了教学培养目标,就可以在教学的各个环节中有章可循,从而为实现高质量的课程教学,取得良好的教学效果奠定坚实的基础。

二、精心选择教材,合理安排教学内容

课本是一课之本,必须针对课程定位和教学培养目标,结合课程自身特点和学生的实际情况精心选择适当的教材并对教学内容做出科学合理的规划和安排。

(一)教材的选择

对于“Visual C++程序设计”这样一门实践性很强的课程而言,选择的教材既要体现课程内容的基础性和系统性,基本概念、基本技术与方法的讲解要准确明晰,又要保证教材内容的先进性,让学生能学到先进的开发工具和开发方法,同时从内容到结构要能反映课程的特点,并做到主教材和上机实验教材配套,教材内容合理分工,以适应教师指导下学生自主学习的教学模式。

由于Visual C++程序设计技术的强大功能和广泛应用,目前的相关教材和参考资料不计其数,经过广泛调研、仔细甄别和反复比较,我们最终选择了黄维通教授编着、清华大学出版社出版的《Visual C++面向对象与可视化程序设计》(第2版)作为课程主教材。该教材是国家精品课程配套教材,荣获2005年高等教育国家级教学成果二等奖、教育部全国普通高等学校优秀教材二等奖,并出版了与之配套的习题解析和上机实验指导书,已被全国多所高校选定为相关课程的主教材。

我们选择该教材还有一个更重要的原因,就是它的内容和结构有一个独特的优点:大多数Visual C++程序设计方面的教材都重点讲述MFC 编程,而很少涉及可视化编程的另一个重要组成部分——API函数,造成学生对程序的内部运行和实现机制不清楚、不理解,直接影响了对编程工具的掌握和应用;这本教材则对API函数和MFC编程都进行了详细的讲解,可以使学生深入理解和掌握程序的运行机制,不仅“知其然”,而且“知其所以然”,从而在程序设计实践中能够做到得心应手,运用自如。

另外该教材在内容安排上遵循了循序渐进的原则,并采用了综合例题贯穿相关章节内容的编写思路,对主要知识点都配有应用实例,与我们的教学思路和目标基本吻合。

但是该教材毕竟不是为我校通信工程专业学生量身订做的,所以我们还要结合学生的专业特点和对先修课的掌握情况等规划和安排教学内容。

(二)教学内容的安排

由于“Visual C++程序设计”课程的建议先修课程—— “C/C++语言程序设计”不是我校通信工程专业的必修课,学生基本上是以选修或自学的方式学习和掌握C/C++语言基础知识,所以学生的基础参差不齐。同时,Visual C++程序设计中的“可视化编程”技术与“语言类”的程序设计课程中讲授的编程方法有很大区别。另一方面,由于Visual C++程序设计技术博大精深,要求学生掌握的知识点相对较多,而该课程的授课和实验总共只有32学时,如果面面俱到,势必造成学生对每个知识点都似乎了解了一些,却又没有很好地理解,不能熟练掌握和运用。针对这些实际情况并结合学生的专业特点,我们在课程教学中选择并安排了如下一些内容。

1.Visual C++基础知识

通过讲解C++及Visual C++的基本概念和基础知识,使学生初步理解“面向对象”与“可视化编程”技术,为后续学习打下良好的基础。

首先,简要复习并总结C++程序设计语言的基础知识,重点是帮助学生理解“面向对象的程序设计方法”的基本思想,体会这种方法在开发大型复杂系统时所具有的优势,并提示学生在实际的程序设计中自觉运用“面向对象”的思想和方法。对于部分学生C/C++语言基础较差的情况,通过指导学生自学、答疑、推荐参考书和教学网站等方式,帮助他们尽快掌握必备的基础知识。

其次,对照DOS程序“过程驱动”的设计方法,阐释Windows程序设计中的“事件驱动、消息响应”机制和Windows 程序的结构框架,启发学生理解Windows 程序的运行机制和开发过程。

最后,对Visual C++的开发环境进行简要的介绍,使学生对其强大功能和使用方法有一个感性的认识,同时给学生演示一些使用Visual C ++开发的生动有趣的小程序、展示往届学生的优秀作品,以激发学生学习后续内容的兴趣并建立学好课程的信心。

2.使用API 函数进行可视化编程

掌握API 函数并熟练利用API 函数进行可视化编程,是学习可视化程序设计的重要组成部分,也是课程教学的重点内容之一。我们选择了在程序设计中应用最为广泛的4个专题:

Windows 绘图、文本输入输出、键盘与鼠标的应用、资源的应用,每个专题都结合多个程序设计实例详细讲解程序设计的基本思路、过程和方法,并启发学生深入理解API 函数在可视化编程中的重要作用,从而顺利地过渡到使用MFC进行可视化编程。

3.使用MFC 进行可视化编程

使用MFC 进行可视化编程是课程教学的另一个重点内容。MFC 是Visual C++提供的用来编写Windows 应用程序的C++类集,其中封装了大量的API 函数和Windows 控件,并借助系统提供的“向导”大大简化了编程过程。由于学生已经具备了使用API函数编程的基础,因此很容易理解“向导”生成的程序代码及其执行过程,并迅速掌握基本的编程方法和技巧。

在这部分内容的教学中,我们在讲授MFC 基础知识的基础上,选取了3个专题:常用控件的应用、常用资源的应用、文档操作,在各专题中同样结合程序设计实例详细讲解程序设计的基本思路、过程和方法,同时引导学生理解API 编程与MFC 编程的关系和区别。

至此,学生已经比较全面和深入地理解并掌握了Visual C++的基本编程技术。

4.Visual C++高级编程

为了更好地将所学知识用于解决实际问题,我们充分结合通信工程专业的特点,选取在通信软件中普遍使用的Win32API串口通信编程和Windows Socket(套接字)编程技术,同样以专题的形式加以介绍和讲解,一方面引导学生掌握Visual C++高级编程技术,另一方面将课程教学与学生所学专业知识有机结合,真正做到“学以致用”。

三、完善教学方法和手段,切实提高教学质量

在准确把握课程教学内容的基础上,科学合理的教学方法和手段是实现高质量教学的保证。“Visual C++程序设计”课程的教学内容具有很强的实践性,针对这一特点,我们在教学中采用实例式教学与启发式、互动式教学相结合的方法,充分利用现代化的多媒体教学手段,并高度重视上机实践环节,切实提高了课堂教学质量,取得了比较好的教学效果。

(一)实例式教学与启发式、互动式教学紧密结合

Visual C++程序设计技术的理论知识比较抽象,程序开发环境的操作界面也比较复杂,初学者往往会感到困难重重,望而生畏,因此我们在各个专题中采用了“实例式”的教学方法,即在简明扼要地讲解基本概念、基本技术和方法的基础上,对每个知识点特别是重点和难点都配以恰当的程序设计实例,通过对实例的设计思路、实现方法、操作步骤、程序代码等进行详细的分析和讲解,使学生能够直观、清晰地了解并掌握“面向对象与可视化程序设计”的核心思想和基本技术。

“实例式”教学可以帮助学生更容易地接受教学内容,但是在教学过程中一定要注意避免学生对知识的理解仅仅局限在某个具体实例上,“只见树木,不见森林”。为此我们把“实例式”教学与“启发式”、“互动式”教学有机结合,启发学生积极思考,鼓励学生主动参与,培养学生举一反三、触类旁通的能力,进而全面理解和掌握教学内容,最终实现熟练、灵活地使用Visual C++程序设计技术开发各种应用程序的目的。

“启发式”教学主要体现在讲解针对各个知识点选择的程序设计实例时,并不是简单地告诉学生怎样编写具体的程序代码,而是首先明确实例的具体设计要求和目标,然后启发学生结合相关知识寻找解决问题的思路和方法,再引导学生按照合理、规范的方法一步步完成程序设计的完整过程,这样学生就能从“一个问题”迅速推知并掌握“一类问题”的解决方法。

“互动式”教学是让学生积极主动地参与到课堂教学中来,而不仅仅是被动的接收者和倾听者。具体的方法包括:教师在授课过程中注意通过眼神与学生进行交流,观察学生的注意力是否集中,是否能够听懂讲授的内容,并让学生感受到教师对自己的关注;适时地向学生提出问题,启发学生积极思考,鼓励学生大胆说出自己的想法,最后进行点评并给出答案;积极创造条件鼓励学生走上讲台,对事先布置的程序设计任务阐述设计思路并现场演示具体操作过程,教师对其中出现的问题给予指正,并对知识点加以延伸,等等。通过这样的互动,不仅可以活跃课堂气氛、激发学生的学习兴趣,更有助于训练并提高学生的主动思维能力和语言表达能力。

(二)充分利用多媒体教学手段

多媒体教室为“Visual C++程序设计”课程提供了非常有利的教学平台,不仅可以借助精心设计的电子教案节省板书时间、丰富教学内容、扩大课堂教学信息量,而且可以在计算机上现场演示程序设计的全过程和其中的每一个细节,使学生可以获得身临其境的体验,生动、直观地理解并掌握所学知识。

我们在电子教案的设计和规划上,体现了课堂教学内容的主线,并融入了教师对教学内容的理解和把握,既考虑到教学过程中的每一个细节,精练、准确地描述基本概念、编程方法、操作步骤等内容,又突出重点、难点,而不是简单地照搬教材内容。

具体制作电子教案时,彻底摒弃了通篇文字的“板书式”教案,充分利用文字、图形、色彩、动画等多媒体表现手段并合理设计和安排版面,使教案图文并茂、生动直观,具有良好舒适的视觉效果,从而增强了教案的表现力和对学生的吸引力,能够更好地为教学服务。

使用电子教案讲授课程内容的过程中,特别注意控制节奏,避免“信息闪逝”问题,即不能一闪而过,要让学生有足够的时间看清楚投影屏上的内容,并结合教师的讲解对这些内容进行思考和理解。

在“Visual C++程序设计”课程教学中,利用多媒体设备还能实现另一个非常重要的功能——现场演示。结合教学内容对完整的程序设计过程进行全程演示,让学生亲眼看到程序的运行结果,可以吸引学生的注意力,提高学习兴趣。

为了让现场演示取得更好的教学效果,我们在课前进行了充分的准备,并结合自己的实践经验确定哪些地方较难理解,哪些地方容易出错,以便在课堂上演示时对学生进行重点提示,取得事半功倍的效果。