提高非计算机专业Visual Basic课程学习兴趣的方法
2011-12-31程传鹏
计算机教育 2011年18期
摘要:Visual Basic语言是一种基于Windows平台的,面向对象的可视化编程语言,由于其具备了直观、简单易学的特性,因此,很多大学都把VB作为非计算机专业的计算机公共基础课来讲授。本文分析了VB教学在非计算机专业学生中所普遍存在的问题,结合教学实际,提出了相应的改进方法,这种方法在笔者的实际教学中取得了较好的效果。
关键词:Visual Basic程序设计 非计算机专业 学习兴趣 教学方法
文章编号:1672-5913(2011)18-0053-04 中图分类号:G642 文献标识码:A
随着Internet的发展以及办公自动化的普及,一名合格的大学生必须掌握计算机技术的基础内容。Visual Basic程序设计语言(以下简称VB)作为一门面向对象的程序设计语言,具有简单易学、功能强大、应用广泛的特点,被公认为是编程效率最高的一种编程工具[1],因此很多院校都选择VB作为计算机程序设计的基础课来培养学生的计算机应用的能力,本文首先指出了非计算机专业学习程序设计语言必要性,分析了教学中存在的不足,并对不足之处提出了改进的方法。
1 非计算机专业学生学习程序设计必要性
1.1 社会信息化的要求
非计算机专业的学生学习计算机,是信息素质教育的需要,也是创造教育的需要,更是发展我国信息产业的需要。掌握计算机知识和应用,是培养满足时代要求的新型人才的一个重要环节。随着科技的进步,计算机的应用促进了各个科学领域的发展。作为一名非计算机专业的大学生,在掌握本专业的同时,也应该初步的学习一些计算机高级语言和程序设计,从能够更好的为本专业服务。
1.2 能够更深入的了解软件的运行机制,从而提高软件的操作能力
Visual Basic程序设计语言(以下简称VB)作为一
门面向对象的程序设计语言,具有简单易学、功能强大、应用广泛的特点,被公认为是编程效率最高的一种编程工具[1]。高级语言程序设计课程不仅使学生能更深入地理解计算机的工作过程,而且在培养学生严密的逻辑思维、培养非计算机专业学生利用计算机解决本专业问题的能力方面有着非常重要的作用
1.3 能够开拓学生的逻辑思维能力以及动手能力。
大学生学习VB,不仅仅是通过二级考试,更重要的培养学生具有相关领域中的计算机应用开发能力以及利用计算机分析问题、解决问题的意识。程序设计课程在培养学生分析问题、解决问题的能力和培养学生创造性思维上起着非常重要的作用。
2 VB教学中存在的问题
Visual Basic语言作为非计算机专业学生的一门计算机基础课,在大学生素质教育中有着重要的作用,然而在这门课程的教授中,普遍存在着以下几个问题。
1) 缺乏相应的基础知识,有畏难心理。
大多高校的VB课程开设是在大一的下学期,尽管在开设VB程序设计课程之前,学校已经给学生开设过计算机文化基础这门课,但很多学生仍然对计算机语言程序设计一无所知,学习程序设计语言过程中理解力、掌握程度相对较差,这直接影响着VB程序设计课程的教学效果。
2) 学习目的不明确。
学生对VB程序设计课程认识不够,学习动机不明确,认为学习程序设计对他们来说没有用,今后到工作岗位上不可能去编写程序,大部分学生只是把VB程序设计课程当作一门不得不学的课程,只是单纯的应付考试。也由于教师教学内容的安排和教学方法的选择不当,使得很多学生学习兴趣不浓,积极性不高,感到这门课程枯燥、难学。
3) 学生接受知识过于被动。
随着计算机技术的发展和计算机课程教学实际要求,目前计算机课程一般采用多媒体教室授课。通过投影仪将教师操作过程及相关知识投射到大屏幕上,极大地丰富了课堂教学内容,加大了传递信息的容量,可以使讲解的内容更加直观形象,更易于理解。但在授课过程中,教师将讲授内容做成电子教案和教学课件进行课堂演示,信息量大,速度太快,学生无法做到边听课边做笔记,留给学生的印象较浅,容易遗忘。
3 课程教学方法的改进
由于上述问题的存在,很多学生学习这门课,只是简单的应付一下期末考试,或者为了通过计算机等级考试,这就完全违背了开设这门课的初衷。为了提高学生的学习兴趣,在教学过程中,我积极探索,结合大学生自身心理特征和这门课的特点,提出以下几个方面的改进措施,以期提高学生学习VB的兴趣。
3.1 提出问题,导入新课
在课堂教学中,每个新知识点的引入,对于学生来说,即新鲜好奇,又充满畏惧,尤其是非计算机专业的学生,如果我们直接引入新的概念或者知识点,学生往往觉得很突然,难以接受,所以,教师能否做到知识的良好导入及适时启发至关重要。
比如在讲解“数组”这一概念时,我们先让学生思考下面一个例题。
例:求三个学生计算机成绩的总和。
这只是一个简单的顺序结构的程序,只需要4个变量,分别代表三个学生的成绩、成绩总和。
大多数学生都能够很好的理解这段程序。在这个问题的基础上,教师顺势提出下面一个问题:求整个班(50个人)学生的计算机成绩总和。最初面对这个问题的时候,由于思维定势的作用,学生自然想到了用50个变量来表示50个学生的成绩,这时候,教师就反问学生,如果求整个学校,几万个学生成绩的总和,需要多少变量?在学生一筹莫展的时候,教师进行提示,帮助学生回忆中学数学里学到的数列,在分析数列的特性的同时,引入新的知识点“数组”。
实践证明,这种知识导入和课堂启发无疑是一种很好的方法,大大提高了学生学习新内容的主动性和积极性。
3.2 任务分解,简化问题
问题规约是人们求解问题常用的策略,就是把复杂的问题变换为若干需要同时处理的较为简单的子问题后再分别加以求解。这其实是人工智能研究中问题求解的基本方法之一[2]。这种方法用在VB教学上,往往会受到事半功倍的效果。
比如在学习二重循环的时候,有下面一个例题要讲解给学生。
学生在面对这个题目时候,往往会束手无策,如果在这个问题之前我们先讲解10!问题解法:
这个程序只需要一重循环,学生较易理解。在此基础上,我们把“for i=1 to 10”换成“for i=1 to J”这就变成了求J的阶乘。接着告诉学生,既然这个J也是在变化。那么就需要另外一个循环来表示J的变化。在上面程序的外面再加一个循环就可以。变成如下的形式:
通过上面的处理,将复杂问题分步处理,再加以综合来获得解答,教学深入浅出,学生们就不会再惧怕复杂问题,逐步建立学生学习VB的自信心,从而提高学习兴趣。
3.3 举一反三,触类旁通
孔子曰:“举一隅,不以三隅反,则不复也。”意思是说,如果告诉他一个角落是这样的,他还不能推悟出其他三个角落也是一样的,那我就不会再多说什么了。这就是成语“举一反三”的由来。在教学中,如果能运用好“举一反三”,启发学生找出两个知识点的联系,就能够从一个知识点,过渡到另外一个知识点,从而获得新的知识,实现知识间的“举一反三”。
比如在VB的教学中,首先给学生讲解在屏幕上输出一个星号表示的矩形,然后要求学生思考从矩形变换成菱形。
输出正方形需要两个循环,外层循环来控制输出行数,内层循环来控制每行输出的星号个数。
通过矩形和菱形的比较来看,所输出星号的行数一样,每行输出的星号个数也是一样,不一样的只是每行星号所在的位置不一样,控制输出位置可以用tab(n)函数也可以直接输出空格字符串。
“举一反三”作为一种有效的教学方法在形式上是通过比较异同,抓住典型,突破单元等手段来达到拓宽学生学习思路,培养思维能力的。更为重要的是,作为一种有效的师生互动的教学方法,在潜移默化中授予他们探求新知识的方法,有助于他们将来在更高阶段和更深层次上的学习,实现“授之以渔”的境界。
3.4 程序改错,培养发现问题的能力
创新思维的可贵之处是随时能发现问题。在程序设计教学中可通过“程序改错”培养学生发现问题的能力。程序设计要求学生思维严谨,一个字符、一个标点错了程序就不能运行或运行结果差之千里。因此,我在教学每一个基本语句时均安排“程序改错”题让学生练习。这些错误码的程序或是因语法错误,或是表达式错误,或是变量类型定义错误。比如下面一个例题:打印一个5×5矩阵,按照常规思维,学生很容易写出如下的程序代码:
程序运行后,学生会发现所有的数组元素会在屏幕的第一列输出。引导学生思考如何正确的分行,学生对程序进行改错,一方面巩固了新学知识,更重要的是培养了学生发现问题、解决问题的能力,促进了学生创新思维的发展。
3.5 阅读程序,培养推理能力
创新思维要求对新事物的诞生有丰富的想象力和预知能力。发明家在发明新的东西时心中已经有该物的蓝图了。在程序设计教学中可否培养学生对事物的预知的思维能力呢?
程序设计教学必须培养学生阅读程序的能力,其主要表现是“程序推理”教学。基本方法是给学生一段源程序,让学生通过所学知识及算法推理程序运行的结果比如我们给出如下一段程序,让学生进行程序推理,得出程序的运行结果。
学生刚面对源程序,猜想结果的类型可能会是数值、表达式或图形,然后按程序执行的顺序及算法再科学推理程序运行的结果,通过阅读程序,培养了学生的推理能力。
3.6 由简入繁,培养学生自信心
前苏联心理学家克鲁切茨基指出:学习一定活动的爱好,导致能力的锻炼和相应的发展,发展了的能力在活动成功上有积极的作用,而成功又反转来“强化”爱好和兴趣[3]。学生一开始接触计算机编程语言的时候,往往觉得内容枯燥,不容易接受,容易让学生感到挫败感,久而久之就会对这门课程失去兴趣。正如婴儿学习走路,开始时大人应悉心照料,等婴儿初步掌握了走路的技巧,再逐渐地把扶助的设备去掉,假如一开始就让他跑,肯定事与愿违。
由繁入简,在学习VB的开始阶段,对于一个程序,不要奢望学生能一下就设计一个完美的程序出来。可以从最简单的设计入手,然后使程序逐步完善,最后将其完善。
3.7 一题多解,培养发散思维
发散思维,又称为求异思维。它是从同一来源材料求不同的(包括特异的)答案的思维过程和方法,思
维方向分散于不同方面,即向不同方面进行思考[4]。发散思维要求善于联想、思路宽阔;要求善于分解组合、引申推导、灵活变通。如果教师在课堂教学中鼓励、引导学生用不同的语句或不同的算法来编程解决同一个问题,往往也会收到事半功倍的效果。
比如我们再讲到For循环时,要求学生用For循环来解决前面所学到的While循环中的例题。在教学中能求新、求变,实行开放式教学,逐步引导学生探求新的方法和知识,则能激发学生的学习积极性,达到最佳的教学效果。让学生探索多种解法,培养发散性思维。
4 结语
VB作为一门重要的基础性编程语言,对提高学生的综合文化素质有着重要的意义,在教学中,如果能利用大学生强烈的好奇心和求知欲,合理的设置教学方式,把知识性趣味性融合在一起,就能够帮助非计算机专业学生树立克服困难的信心,培养他们学习的积极性。使学生能够体验到成功的快乐,。从而,使学生都能很好地完成学习任务,提高学生的实际应用能力,使得VB课程的教学质量得到不断提高。
参考文献:
[1] 何源. 任务导向教学在Visual Basic程序设计中的应用[J]. 北京:人力资源管理: