非计算机专业高职生学好VB课程的教学改革探索与实践

2010-12-02 01:38:24叶香美
浙江工商职业技术学院学报 2010年3期
关键词:控件老鼠知识点

叶香美

(浙江工商职业技术学院,浙江 宁波 315012)

非计算机专业高职生学好VB课程的教学改革探索与实践

叶香美

(浙江工商职业技术学院,浙江 宁波 315012)

本文针对项目教学法在VB课程中的应用问题,提出了选取和设计高质量VB游戏教学项目的总体思路,并通过实例进行了说明。对于非计算机专业学生,结合所学专业知识进行VB项目教学,并以实例进行说明。

项目教学;总体思路;VB程序设计

VB.NET是一门非常重要的语言,也是高职教育中交给学生的重要技能。VB.NET中有很多概念、大量的控件以及复杂的事件,使得要想掌握好VB.NET并不是一件容易的事情,对于非计算机专业的学生来说没有相应的编程语言基础,学习VB就更难了。本文旨在根据VB.NET其本身的特点,有的放矢地摸索一条VB.NET的教学之路,能够很好地帮助学生掌握VB.NET。

1 教学现状分析

1.1 高职学生的特点

高职院校学生跟本科学生有着明显的区别,这不仅表现在录取分数线上,更重要的是表现在学习积极性、主动性、知识接受能力等方面。高职生普遍来说文化基础差,逻辑思维能力不强,学习主动性差,不喜欢学习枯燥的理论知识,形象生动的实例才是他们的最爱。而笔者在多年的教学实践后也得出同样的结论,直接、形象的教学才能使学生听懂、理解理论知识,让学生动手自编小游戏才能使他们掌握重要的知识点,学习但同时也是娱乐的教学方法是激发他们学习兴趣最直接最有效的方法。

1.2 VB课程本身存在的困难

VB.NET引入了一些新的概念、大量的控件以及复杂的事件,使得要想掌握好VB.NET并不是一件容易的事情。

首先,VB.NET是真正面向对象的,完全支持继承、重载和接口。这些和以往的面向程序设计语言有很大差别。面向对象和面向过程是完全不同的两种思维方式,如果学生在思路上转不过来这个弯,不但学习起来吃力,更主要的是很难掌握好课程要点。很多学生非常习惯于程序的顺序执行,编写一个main函数,从函数的第一条语句开始执行,按照顺序执行下来,直到main函数的最后一行,VB.NET的程序设计流程和整个执行流程却不是这样,这也是学生学习此课程效果差的一大原因。

其次,VB.NET中概念繁多。VB.NET是面向对象的程序设计语言,涉及到许多新的概念,比如类、对象、属性、方法、接口、消息隐匿、封装、继承、多态等。理解这些概念不仅要记住其概念,还要在理解了面向过程编程的思想后,再分析每个概念的具体涵义,要理解这些概念就必须在掌握理论的同时还要做大量的练习,这样才能在实际应用中充分体会其涵义,而且公共类库中多达三千多个类,可以说内容极为丰富。

再次,控件复杂。VB.NET是一种可视化的编程语言,系统提供了丰富的各类控件,使用户再对应用程序界面的设计中有更大的发挥控件,控件的极大丰富性对于熟练的编程人员来说无异是如虎添翼,但是对于入门人员或者初级编程者在学习时却又是一大阻碍,各类基本控件的教学使VB.NET教学中的重点和难点。除了Button、CheckBox、ComoboBox、RadioButton、Lable、TextBox 等常用的几十种控件之外,VB.NET 还包括了 Datagrid、TreeView、ListView、Timer等比较难以操纵的控件,对于这些控件的属性和相关事件的熟悉都需要不断地阅读程序并且加以练习。

最后,事件复杂。VB.NET采用事件驱动的编程机制,而传统的编程方式是一种面向过程,按程序事先设计的流程运行。这又是面向对象和面向过程之间的巨大差异造成学习者的不容易掌握。面向对象编程中,在图形用户界面的应用程序中,用户的动作(即事件)掌握了程序的运行流向,每个事件都能驱动一段程序的运行,而每段程序又是结构化的程序设计。有很多与用户使用鼠标和键盘相关的事件, 如 MouseDown、MouseUp、MouseMove、MouseEnter、MouseLeave、MouseHover、KeyPress、KeyDown 和 KeyUp,而且这些事件在运行时有固定的引发顺序,因此掌握起来就比较困难。

2 解决问题

2.1 从学生角度出发

对学生来说,他们上课兴趣不大的主要原因是语言编程课有一定难度,而且课本上的众多案例与学生的生活实际相距甚远,让他们觉得学了无用,但是学生对上课时玩点游戏就算是再小的游戏都非常有兴趣,有些学生甚至可以玩两节课的纸牌。从学生这个角度来解决问题那就是将课本上众多较远的案例先暂时放到一边,采用项目教学方法,在教学过程中增加一些平时学生经常玩的小游戏。

2.2 从VB学科角度出发

将VB中需要掌握的各知识点融入到一个个有趣的游戏中进行讲解,让学生在使用过程中掌握各知识点,并且可以知道各知识点的用法,掌握开发完整项目的方法。

3 具体方案

游戏项目的引入旨在体现教学和游戏的相辅相成。笔者根据教材每一章节的理论知识开发了几款与该章节相对应的VB小游戏。实践证明,益智游戏不仅能激发学生的兴趣,还能开拓学生的视野,丰富他们的想象力,让学生自编游戏,编好的游戏有一定的娱乐性,让学生在玩中体会VB的强大编程功能,开启学生开发程序的潜在能力。

参照一些常见的游戏,把课本中重要的基础知识点编写成一些实用的小游戏,配以吸引人的背景画面,让学生在很愉快的情况下记住要掌握的知识。

3.1 打地鼠游戏项目教学过程

刚开始时可以导入实例,布置任务。教师可以通过询问学生有无玩过打地鼠的游戏,打地鼠游戏一般有两种形式,一是游戏厅中的打地鼠机器,一是在电脑中安装一个打地鼠软件。可以请一个同学描述游戏厅的打地鼠游戏机的游戏过程,另一位同学描述电脑上玩打地鼠的过程。最后让大家总结游戏的主要工作过程与游戏规则,如果让你用VB软件设计打地鼠游戏的话需要哪些VB对象。

然后教师可用大屏幕演示准备好的实例。在这个实例演示中,学生注意力都会集中到小老鼠在各个鼠洞之间快速出现的动画部分,打中老鼠会出现恭喜你打中了,一段时间后游戏停止,并统计打鼠成绩。演示完后,教师可以让学生记下游戏过程,列出所用到的控件和事件,并提出哪些是没有控件是没接触过的,从而引入新的知识点:如用timer控件来达到定时的目的、timer对象的属性设置等。

3.2 项目的实施

步骤1 新建一个打地鼠项目,建立一个windows应用程序。

步骤2 添加10个picturebox控件,一个放鼠洞,其余放老鼠。

步骤3 添加让老鼠动起来的控件timer。在此可以详细讲解timer控件的属性和使用方法。添加timer控件,设置属性,enabled为true,意义为打开时钟,控件将会激活,事件过程将间隔发生;interval为1000,作用是一秒钟产生一个事件发生,每隔一秒钟老鼠随机出现。

步骤4 添加程序让老鼠动起来的程序。在此讲解随机整数i产生的方法,并根据这个随机数决定哪张老鼠图片显示。

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles Timer1.Tick

Dim ints As New Random’创建一个random类的实例

i=ints.Next(1, 9)’产生 1-9 的随机整数

Select Case i’对随机数i进行选择

Case 1’ 当 i=1时

PictureBox2.Show()’左上角的老鼠图片显示,即放在PictureBox2里的老鼠图片显示

PictureBox3.Hide’放在PictureBox3里的老鼠图片隐藏

PictureBox4.Hide()’放在PictureBox4里的老鼠图片隐藏

PictureBox5.Hide()’放在PictureBox5里的老鼠图片隐藏

PictureBox6.Hide()’放在PictureBox6里的老鼠图片隐藏

PictureBox7.Hide()’放在PictureBox7里的老鼠图片隐藏

PictureBox8.Hide()’放在PictureBox8里的老鼠图片隐藏

PictureBox9.Hide()’放在PictureBox9里的老鼠图片隐藏

PictureBox10.Hide()’放在PictureBox10里的老鼠图片隐藏

Case 2’ 当 i=2时

PictureBox2.Hide()’放在PictureBox2里的老鼠图片隐藏

PictureBox3.Show()’放在PictureBox3里的老鼠图片显示

PictureBox4.Hide()’放在PictureBox4里的老鼠图片隐藏

PictureBox5.Hide()’放在PictureBox5里的老鼠图片隐藏

PictureBox6.Hide()’放在PictureBox6里的老鼠图片隐藏

PictureBox7.Hide()’放在PictureBox7里的老鼠图片隐藏

PictureBox8.Hide()’放在PictureBox8里的老鼠图片隐藏

PictureBox9.Hide()’放在PictureBox9里的老鼠图片隐藏

PictureBox10.Hide()’放在 PictureBox10里的老鼠图片隐藏

Case 3

PictureBox2.Hide()’放在PictureBox2里的老鼠图片隐藏

PictureBox3.Hide()’放在PictureBox3里的老鼠图片隐藏

PictureBox4.Show()’放在PictureBox4里的老鼠图片显示

PictureBox5.Hide()’放在PictureBox5里的老鼠图片隐藏

PictureBox6.Hide()’放在PictureBox6里的老鼠图片隐藏

PictureBox7.Hide()’放在PictureBox7里的老鼠图片隐藏

PictureBox8.Hide()’放在PictureBox8里的老鼠图片隐藏

PictureBox9.Hide()’放在PictureBox9里的老鼠图片隐藏

PictureBox10.Hide()’放在 PictureBox10里的老鼠图片隐藏

Case 4

PictureBox2.Hide()’放在PictureBox2里的老鼠图片隐藏

PictureBox3.Hide()’放在PictureBox3里的老鼠图片隐藏

PictureBox4.Hide()’放在PictureBox4里的老鼠图片隐藏

PictureBox5.Show()’放在PictureBox5里的老鼠图片显示

PictureBox6.Hide()’放在PictureBox6里的老鼠图片隐藏

PictureBox7.Hide()’放在PictureBox7里的老鼠图片隐藏

PictureBox8.Hide()’放在PictureBox8里的老鼠图片隐藏

PictureBox9.Hide()’放在PictureBox9里的老鼠图片隐藏

PictureBox10.Hide()’放在 PictureBox10 里的老鼠图片隐藏

Case 5

PictureBox2.Hide()

PictureBox3.Hide()

PictureBox4.Hide()

PictureBox5.Hide()

PictureBox6.Show()

PictureBox7.Hide()

PictureBox8.Hide()

PictureBox9.Hide()

PictureBox10.Hide()

Case 6

PictureBox2.Hide()

PictureBox3.Hide()

PictureBox4.Hide()

PictureBox5.Hide()

PictureBox6.Hide()

PictureBox7.Show()

PictureBox8.Hide()

PictureBox9.Hide()

PictureBox10.Hide()

Case 7

PictureBox2.Hide()

PictureBox3.Hide()

PictureBox4.Hide()

PictureBox5.Hide()

PictureBox6.Hide()

PictureBox7.Hide()

PictureBox8.Show()

PictureBox9.Hide()

PictureBox10.Hide()

Case 8

PictureBox2.Hide()

PictureBox3.Hide()

PictureBox4.Hide()

PictureBox5.Hide()

PictureBox6.Hide()

PictureBox7.Hide()

PictureBox8.Hide()

PictureBox9.Show()

PictureBox10.Hide()

Case 9

PictureBox2.Hide()

PictureBox3.Hide()

PictureBox4.Hide()

PictureBox5.Hide()

PictureBox6.Hide()

PictureBox7.Hide()

PictureBox8.Hide()

PictureBox9.Hide()

PictureBox10.Show()

End Select

3.3 知识的迁移

至此老鼠已会动起来,但功能不完善,可以让学生从以下几方面入手。

增加功能一:让学生思考鼠标点中随机出现的老鼠时有所反应,如显示“打中了”。可以给学生提示,对显示老鼠PictureBox的click事件编程。

增加功能二:增加一个全局变量,用于统计打中几只老鼠。

增加功能三:定时功能,如定时3分钟,3分钟一到不能再进行游戏,并统计打鼠战果。

增加功能四:增加再来一次按键,按一下重新开始游戏。

增加功能五:老鼠出现速度可实时调节。

在课堂中教师应随时观察学生的态度,以便了解学生对游戏的认知程度,必要时要根据学生掌握知识的情况及时对所讲授游戏增加功能进行增删。

让每个学生发挥想象,对游戏进行完善,这无疑是充分调动学生积极性和主动性的一个良好选择。随着教学的推进,学生可以不断用所学的新知识来对这个游戏进行原有功能上的完善和结构上的改进,教师可根据教学内容安排提出新的功能和结构上的要求。为了达到新的设计目标,学生会积极地投入到对游戏项目的调试、改进的实践中。

3.4 项目的评价

项目完成后,举行展示。师生一起观看学生作品,共同民主评分。对优秀的作品,放入教师机上进行演示。

4 与专业结合的综合训练

用游戏的方式教会学生VB的使用,非计算机专业学生学习VB的最终目标还是要与专业相结合,如何让学生学会把VB与专业知识结合起来,亲身感受为什么要学习VB这门编程语言。下面以应用电子专业为例,如何进行VB和专业的结合。在学生学习VB基本知识后,引入与专业知识相结合的项目 “基于VB与单片机的温度测控系统”。以PC机为上位机实施用户控制和以单片机为下位机进行实时数据采集的分布式智能化控制系统。单片机实现温度检测,涉及应用电子专业专业知识,让学生动手制作一个检测实物;PC机完成了数据显示、存储及统计分析,绘制了实时温度曲线,并对系统目前所处状况做出了评判,涉及了所学的VB知识。两者之间以串行口进行通信联络。

综上所述,在VB.NET程序设计的教学实践中,改革旧的教学模式,结合学生实际情况,不断探索切合实际的教学方法和手段,采用综合评价学生的方式,努力培养学生自主学习的兴趣,提高学生实际应用的能力,VB.NET课程的教学质量才能得到不断地提高。

[1]阿力木江·排孜艾合买提,阿不都热合曼·艾合买提.Visual Basic.NET简介 [J].和田师范专科学校学报,2007,(5).

[2]杨洪斌.VB 程序设计教学初探[J].科技资讯,2006,(31).

[3]朱跃波.浅谈高职VB教学改革[J].怀化学院学报,2006,(5).

Teaching VB Course for Non-computer Majors in Higher VocationalColleges

YE Xiang-mei
(Zhejiang Business Technology Institute, Ningbo 315012, China)

Against the application of teaching method in project courses for VB course, the paper selected a design of a high quality game and exemplified the case.

teaching method in project courses;general idea; VB prgrom design

G718.5

A

1671-9565(2010)03-081-04

2010-07-01

叶香美(1978-),女,浙江宁波人,浙江工商职业技术学院讲师,主要从事电子仿真、VB、单片机方面研究。

[责任编辑:黄素华]

猜你喜欢
控件老鼠知识点
一张图知识点
一张图知识点
第四页 知识点 歼轰-7A
关于.net控件数组的探讨
软件(2018年7期)2018-08-13 09:44:42
老鼠开会
大灰狼(2018年1期)2018-01-24 15:53:20
笨猫种老鼠
关于G20 的知识点
就这样玩会VBA中常见的自定义控件
电脑迷(2012年24期)2012-04-29 00:44:03
老鼠分油
在PowerBuUder中利用WinSock控件制作简单的Web服务器