非计算机专业中“VB程序设计”教学方法初探

时间:2022-10-02 02:55:09

非计算机专业中“VB程序设计”教学方法初探

摘要:“Visual Basic程序设计”是面向高校学生开设的第一门程序设计课程,作为非计算机专业的专业基础课,近年来受到愈来愈多的重视。本文针对非计算机专业的“VB程序设计”教学,提出无论是课堂教学还是实验教学环节,都应结合学生所学专业,将程序设计应用到其专业知识中去,以激发学生的学习兴趣,实现教与学相结合的良好效果。

关键词:VB程序设计语言;非计算机专业;专业实例法;教与学

中图分类号:G642 文献标识码:B

Visual Basic(以下简称VB)与许多程序设计语言一样,教学内容中除了包括数据类型、变量和常量、运算符和表达式等基本语言基础,更为重要的是结构化程序设计的三大控制结构和编程方法。VB突出的特征是面向对象的事件驱动机制,使得编程时无论在设计理念、设计过程及设计方法上对教师的教与学生的学都有较高要求。因此,采用先进有效、灵活多样的教学方法是提高“VB程序设计”课程教学质量的关键。

“VB程序设计”在高校非计算机专业中是专业基础课,不同于“高等数学”、“大学英语”等基础课,它的实践性很强。现在的学生特别讲究实用性,总爱问“学习这门课有什么用?”,如果你仅仅告诉他们学了它以后可以编写程序,这样很难激起他们的兴趣,因为对他们而言,编程似乎离他们太远,他们更关心的这门课程是不是与所学专业靠拢,便于自己将来更好地加以应用。如果脱离实际应用,学生的学习兴趣和积极性就不会太高,最后导致达不到预想的教学效果。那么为了更好地激发同学们学习VB的兴趣,取得良好教学效果,使之成为今后专业工作中的重要手段。根据多年来从事测绘工程专业“VB程序设计”教学实践,结合该专业特点,提出改变单一以计算机语言讲课的教学方式,应在课堂教学、实践教学环节,结合专业应用,寓专业实例于教,是行之有效的教学方法。

1课堂教学

1.1选取合适的实例作为内容的切入点

在“VB程序设计”教学中,VB语言基础的课程教学十分枯燥,学生听了以后也是一头雾水。尤其是运算符和表达式与原来数学中的表达书写有差异,思想上要进行转换不是一时半会的事情。这时采用比较简单且与学生熟知的例子来进行演示、讲解,效果就很明显。实例不在多,在于它的说服力及连贯性。一个实例如果在讲授多个知识点时都能用上,对学生的理解会更具系统性。如图1,求解图中相邻点之间的距离,也即边长。

这个实例从开始学VB语言基础,到数组的应用、过程的应用等阶段都具有典型性,而且对于测绘工程专业学生来说也会在专业课程中经常遇到。

本例可从以下几方面引导学生对知识的理解:

(1) 数据类型及变量

计算机在处理数据时,必须将其装入内存,这样就引入了变量,同时想到变量的数据类型。本例中有八个单精度数据需要存储,定义八个单精度类型的变量,然后再给这些变量分别赋已知值。

(2) 运算符和表达式

在边长计算中,学生都明白已知两点坐标求两点距离的公式。这里主要考虑应用学到的VB运算符及内部函数将数学公式转换成VB表达式。

(3) 函数的灵活应用

本例中要求计算的边长保留两位有效数字。我们知道,VB中如果输出结果不处理的话,以默认的形式显示,这往往不是我们想要的。这时,我们可以利用Format函数对结果进行格式化,还可以使用Int函数进行处理。如:将数据98.4564保留两位有效数字的做法是:

Int(98.4564*100+0.5)/100。

通过该例,学生对数据类型、变量、运算符和表达式等语言规则就有了直观而深入的理解。

在学到数组时,我们知道在实际应用中要处理同一性质的成批数据时,有效的办法是通过数组来解决。上例中,有四个点坐标,八个同一性质的数据,要对其进行存储,至少定义八个简单变量,这无疑在定义变量、初始化变量以及计算方面带来很大的工作量。如果图中增加更多的点,那简单变量就更显得力不从心了。比如:该例若用数组解决,可定义一个数组名为x,大小为4,一个数组名为y,大小也为4的两个数组就可以存储八个数据了,即:Dim x(4) As Single,y(4) As Single。在赋初值时,结合循环很容易就实现,如:

For i = 1 To 4

x(i) = InputBox("请输入第" & i & "点的X坐标")

y(i) = InputBox("请输入第" & i & "点的Y坐标")

Next i

以上与八条赋值语句相比,减少了很多工作量。可以说,适当的时候采用适当的解决办法,会达到事半功倍的效果。

同时,在学到过程时,还可以用到这个实例。因为过程的最大应用就是避免我们重复写代码,也就是说,在程序中多次用到的相同的代码,我们可将其定义为过程,供其他过程多次调用。上例中,有几条边就得计算几次边长,而每次计算边长的方法都一样,只是数据有差异,这时候我们可将计算边长这个功能定义成函数过程,这样又减少了工作量。如:

Function bcFunc(xa!, ya!, xb!, yb!) As Single

bcFunc = Sqr((xa - xb) ^ 2 + (ya - yb) ^ 2)

End Function

计算边长的程序如下:

For i = 1 To 4

bc(i) = bcFunc(x(i), y(i), x(1), y(1))

bc(i) = Int(bc(i) * 100 + 0.5) / 100

Next i

通过以上对同一个程序进行数组的应用、过程的应用的修改之后,不仅让学生对知识有了系统的掌握,同时让学生直观地感受到写程序不只是得出结果那么简单,也要考虑程序要简洁、结构清楚、尽量减少冗余。

1.2与学生互动,提高学生学习的主动性、积极性

现代化的教学模式体现了信息量大、直观等特点,更重要的是在新模式下,通过多媒体教学手段的激励进行的师生互动,只有这样才能充分体现现代化教学模式的优势。除了要加强课堂启发互动外,尽可能结合课程自身的特点,加强学生现场演练来提高其学习的主动性和积极性。

(1) 课堂启发

众所周知,计算机程序设计针对某一问题都是先确定算法,再根据算法进行编程。在提出算法这一阶段,就是通过老师引导学生,给学生提出问题,学生问题思考,找到解决问题的思路,最后师生共同完成程序编写。这种互动,大大提高了学生学习VB的主动性和积极性,最终使他们能够独立解决问题。有时,教师也可以将自己写好的实例先演示给学生,然后,采用启发式提问学生自己所看到的功能会是使用什么方法解决的。这种互动,能够有意识地提高学生的主动性,引导学生将课堂上所学知识得到巩固应用。实践证明,这种启发也无疑是一种很好的方法。

(2) 现场演练

为了提高学生听课的积极性,了解学生对本次课的掌握情况,在课堂上留出几分钟的时间,结合本次课的内容出题,让学生上讲台现场解决。通过这种形式的任务驱动,大部分学生学习的热情极高,能够主动接受检验,同时根据完成的情况,明显地发现学生对知识理解得比较透彻、充分,达到了预想的满意效果。

2实践教学

实践教学环节在计算机程序设计教学中至关重要。在这一环节,要做到以下几点。

2.1实验任务明确、充实

每次实验课,要求学生课前做好实验准备,即先写好每个任务的程序,至少也是应该对实验任务是有了思路的(即算法),然后带着问题有目的地坐在计算机前输入程序、调试、最后得出结果。之所以这样做,是因为对学生来说,机时显得非常宝贵。若坐在计算机前再开始看题、理思路,一次实验的时间确实不够这么去消磨,更谈不上去提高自己的编程能力了。编程能力的提高大多是通过一次次调试程序,解决存在的问题来实现的。所以课前准备就尤为重要了。

实验课上,要保证学生任务充实,即有事可做。除了要求学生练习基本知识的应用外,还加强了与专业相结合的相关综合实验。比如:测绘工程专业学生在进行完经纬仪导线的野外施测后,要进行经纬仪导线计算,即根据野外采集的导线边长和角度来求得各导线点的坐标。这一系列的计算,包括五个步骤,即:角度闭合差的计算和调整;坐标方位角的推算;坐标增量的计算;坐标增量闭合差的计算和调整;坐标计算。整个过程对学生来说思路清楚,计算都有公式可循,似乎很简单,但用计算机处理起来,还是有难度的。不是程序有多复杂,而是学生能否灵活地应用所学知识来解决实际问题,这是一个挑战。在挑战面前,最能锻炼学生、提高学生的编程能力了。通过与专业相结合的这种应用性教学,学生一方面对专业知识加深理解,另一方面对学习这门课的目的明确了,积极性、能动性提高了,教学目的也就达到了,教学效果也较好。这是一个两全其美的方法,值得根据专业特点适当推广。

2.2加强辅导力度

实践教学环节不是学生的独角戏,教师一定要抓好这个环节的辅导,会起到非同一般的效果。

(1) 随时解决学生遇到的难题

学生在实验过程中,难免会遇到拦路虎,他们急需帮助时,教师能够及时进行指导,并根据问题所在,加深对知识理解的引导,这样日积月累,学生的能力自然就上去了。如果教师不在身边,问题长时间不能得到解决,学生很有可能会出现消极态度,久而久之,甚至会失去学习的兴趣,这样问题就严重了。此外,通过实验辅导,可以发现普遍存在的问题,教师可将其进行总结,下一次课再结合实例讲给大家,加深学生对其的理解。

(2) 适当的拓宽学生的思维

学生在完成实验任务时,应鼓励学生多动脑,多尝试,同一个任务应用多种方法实现,同时还可以加入其它功能。比如:在介绍VB的主要特点时,为了便于学生更好地理解,可以举一个例子:简单字幕动画演示。如图2,程序运行过程中,窗体上的字幕是从左向右移动的,并且当字幕到了右边界看不见时,字幕又自动从左边界开始向右移动。学生在实验这个例题的过程中,提出这样的问题:“能不能让字幕双向移动,即从左到右,再从右到左?”回答是肯定的,虽然学生是初学,而且大多知识还未接触,但不失时机地积极指导,可以很好地培养他们的兴趣。果不其然,经过指导,程序实现了他想要的功能,学生特别有成就感,此后,他学习VB的积极性非常高,而且经常在完成任务后,去写一些趣味性的程序。这说明学生的思维已不再局限在书本内,而是去开辟另一片天空,他已领略到其中的乐趣了。

综上所述,实验教学环节是学生和教师共同的时间,学生应该带着问题和任务去实验,而教师应及时进行答疑解惑,二者的配合,是对课堂教学的延伸,起着相当重要的作用。

3加强考核

课程考核往往作为衡量教学效果的一种客观手段,在教学环节中起着很重要的作用。而高校中大部分课程都采用传统的期末闭卷笔试形式进行考核,这种方式只注重考核学生理论知识的掌握情况,而忽视了学生实践操作的能力测试,进而很难反映一个学生的应用知识解决实际问题的能力。因此,根据VB的课程特点,采取将传统的期末闭卷笔试与期末机试、平时考核、实验考核相结合的模式是可取的。在该模式中,期末闭卷考核成绩占70%(我校规定至少占70%),机试成绩占10%,平时成绩占5%,实验成绩占15%。期末机试是一项综合能力的检测,这项考核由教师出题,着重考察学生综合应用所学知识解决实际问题的能力。平时成绩主要根据学生的出勤情况给出,提高学生主动参与程度。实验成绩根据学生每次的实验完成情况给出,包括实验的准备、实验课上的探究和创新程度等表现,此外,还注重学生结合自己专业应用所学知识编写程序的能力,即根据本文中实验教学部分的任务进行考核。通过近几年对这种考核方式的应用来看,很大程度上提高了学生学习的主动性、积极性,同时在能力上也有了明显的提高。

4结论

“VB程序设计”课程是为非计算机专业学生开设的第一门程序设计课程,在高校的计算机基础教学中占据重要位地位。教师采取得法的教学方法,对学生的学习是非常重要的。在多年给测绘工程专业学生讲授该课程的教学过程中,不断探索、改变教学方法,认为程序设计语言的教学应结合其专业应用,才能激发学生学习语言的兴趣,提高学生的积极性、主动性,“教师的教”和“学生的学”才会取得良好的效果。

参考文献:

[1]杨潞霞. “VB程序设计”的教学的改革与实践[J]. 计算机教育,2007(15):24-26.

[2]朱长江,白晨希. VB程序设计教学方法探讨[J]. 电脑知识与技术,2007(09):871-872.

[3]王猛. 互动式VB教学[J]. 黑龙江科技信息,2007(23):231-231.

[4]袁锋. 谈《VB程序设计》教学方法改革的五个转变[J]. 中国成人教育,2004(09):67-67.

上一篇:计算机专业核心课程教学改革和教材建设的重要... 下一篇:“计算机专业英语”教学中时新教学材料选用的...