张红伟 徐州医学院医学信息学院, 江苏 徐州 221000
非计算机专业VB程序设计课程教学思考
张红伟 徐州医学院医学信息学院, 江苏 徐州 221000
结合VB课程本身教学要求,针对非计算机专业学生学习第一个门程序设计语言的特点,总结了VB程序设计课程教学过程中几个基本问题,并探讨了相应的教学方式和方法。
VB课程;非计算机专业;教学方法
随着信息社会的发展,计算机作为一种智能化的工具不断深入到我们生活、工作的方方面面。掌握计算机知识与技术已经作为现代人的一个基本技能。对于在校的大学生来说,作为即将踏入工作岗位的高技能工作者的代表,掌握计算机应用对其尤为重要。在高等教育中,计算机也已成为大学生课程体系和知识体系中的重要组成部分。目前,对于非计算机专业的学生,一般主要开始两门计算机课程:计算机文化基础和VB程序设计。
对于非计算机专业学生来说,本身掌握的计算机知识相对较少、底子薄,难以深入理解VB程序设计,同时学生也抱怨课程内容相对繁杂、枯燥、难以学习和理解,也无法和实际生活想联系、能以应用,因而也缺乏学习的动力,更不用说是自主学习。对于这种现象,主要原因可以总结为以下:
第一忽略了认知结构在学习过程中的作用,不注重帮助学生构建VB课程的认知结构、学习VB的作用,致使学生对学习的目的不清楚,从而缺乏学习的兴趣和动力,也无法掌握从整体上掌握知识框架。
其次 学生对于新的课程认识不足,而且教师在上课过程很少介绍本门课程的特点和学习的方法,从而学生导致在不知道如何去学习这么课程。
针对这两个问题,本文结合认知主义学习理论并针对VB课程的特点,给出了如何帮助学生构建VB课程的结构、获取课程的基本原理,从而夯实课程学习的基础;另外结合VB学习的特点,教给学生学习的方法,让学生知道如何学,进而为学生自学做好充分的准备。
认知主义强调教学应该让学生掌握学科的基本结构。所谓的学科的基本结构就是指学科的基本概念、基本原理和基本态度和方法。认知主义的代表人物布鲁纳认为,学生懂得了基本原理,就使得学科更容易理解,就容易记忆学科的知识,就容易产生学习的迁移,就能够缩小“高级知识”和“初级”知识之间的间隙[1]。因此帮助学生了解VB课程的基本原理、基本概念以及基本的学习方法对于学好V B非常重要。
1.1 帮助学生理解计算机相关的基本概念和原理
VB程序设计的先驱课程是计算机基础知识,因此掌握计算机工作的基本原理对于学习VB非常重要。首先,学生要理解一下有关计算机的基本概念和原理:什么是计算机、它的工作原理、计算机的组成部分以及各个部分在计算机工作过程中的作用、计算机软件以及操作系统概念、程序是如何被计算机执行的。这些基本的概念或者原理是学生进一步学习VB程序设计至关重要的基础,因此在教学过程中一定要把这些概念和原理讲的透彻,为学生进一步学习VB夯实基础。
1.2 帮助学生熟悉教学大纲
认知主义学习理论把学习分为机械学习和意义学习,其代表人物奥苏泊尔认为,意义学习就是将符号所代表的新知识与学习者的认知结构中央已有的适当观念建立起非人为的和实质性的联系过程。如果学习者没有理解符号所代表的知识,只是依据字面上的联系记住某些符号的词句或者组合,则是一种死记硬背的机械学习。对于计算机学科以理解为主的知识学习,很显然采用意义学习方式更为合适。但是,有意义学习有一些必要的条件,例如需要学习材料本身必须具有逻辑意义、学习者必须具备有意义学习的心向、学习者的认知结构中必须具备适当的知识以便同化新知识。
教学大纲是以系统和连贯的形式,按照章节、课题和条目叙述该课程主要内容的教学指导文件,它规定了每个学生必须掌握的理论知识和实际技能,也规定了教学进度和教学方法的基本要求[2]。而且教学大纲还明确给出了各章节的知识范围和深度,包括对基础理论、基本知识和基本技术“掌握”、“熟悉”和“了解”以及“学会”等不同的目的和要求。这样学生在了解教学大纲的时候,不仅能对本门课程的主要知识结构有了基本认识和了解,并且能够熟悉本门课程的详细的教学内容以及各个章节的重点和要求,这样学生在学习的过程既有大局观有可以有的放矢,从而可以有效地促进学生进行意义学习。
大学生学习知识和技能相对于以前阶段的学习方式上有了很大的改变,其中最重要的是自主学习日益占有重要地位。因此在教学的时候除了在课堂上教学生VB的相关基础知识和基础理论,对于教会学生如何更好学习尤其是自我学本门课的方法十分重要。因为VB课程有着本身的特点,记忆不能根本上帮助学生学好VB课程。在VB教学的时候,要有意识的帮助学生建立计算机的思维模式很重要[3],也就是说学生能像计算机科学家那样来思考问题,这样学生既可以读懂并理解别人的算法、程序同时在遇到实际的问题的时候就会产生一个本能的反应:如何编写VB程序去解决问题,这样就会更好促进学生去发现问题、编写VB程序解决实际问题。
图1 VB的帮助文档中关于Len函数的说明图
【例题1】 编写程序,找出证书a至整数b范围内所有的升序数。其中a≧100,b≦3000.所谓的升序数,是指从最高位开始直到个位,各位上的数字依次递增的整数,例如,134、2356都是升序数,而173,25743不是升序数[4]。
教师要引导学生去解决问题,对于某个十进制的数,例如2356,如何判断它是否是升序数呢?我们就要根据升序数的定义。但是首先要做的就是分解这个数,把各位上的数字提取出来,然后对提取出来的各个数逐次比较就行了。这里的关键就是提取各位上数字,我们可以引导学生如何提取:询问学生有没有什么方法从一个对象中提取其中某一部分,从而引导学生去找Mid函数。然后我们可以通过如下演示来引导学生发现其中提取的规律(其中st代表字符串“2356”):
第一步提取到字符“2”:Mid(st,1,1)→“2”
第二步提取到字符“3”:Mid(st,2,1)→“3”
第二步提取到字符“5”:Mid(st,3,1)→“5”
第二步提取到字符“6”:Mid(st,3,1)→“6”
教师就引导学生去发现其中的规律,在这里过程,处理的方式都是一样,提取的次数就是数的位数,只不过每次Mid函数提取的起始位置不一样,由于这一过程是有规律的重复,于是我们就想到用循环来提取数字(其中A代表一个长度为L e n (st)的数组):
这样在提取所有位的数字之后,进行各位数字的比较就容易多了。
在这种情况下,学生不仅可以学以致用从而体现学习的价值,而且还是驱动学生往更高层发展的一个动力。
另外,教会学生合理的使用V B的MSDN。MSDN全称是Microsoft Developer Network,是微软公司面向软件开发者的一种信息服务,对于VB6.0对应的帮助文档是MSDN Library Visual Studio 6.0,其中包含V B所有基础知识、开发实例等,它要比常见的教科书上介绍的知识更为详细,更重要的是提供了详细的用法。
图2 VB的帮助文档中Len函数的用法示例
【例题2】对于VB中的函数Len(),如果学生不明白不知道如何使用,只要打开VB的MSDN,然后在索引中输入len,找到需要Len函数然后单击,就可以在右面窗口中显示Len函数的功能、参数等说明,如图1所示,
如果还是不明白L e n函数的用法,单击示例就可以看Len用法示例,图2所示。因此,对于开发者来说,学会使用并用好VB的非常重要,因此教学的过程要教会学生 如何正确的使用VB的帮助文档不仅可以为学生提供获取知识方式也为学生自学提供便捷的途径。
对于老师来说,要全面的掌握计算机学科的知识,能够熟练地掌握教学大纲和教材,并针对非计算机学生的特点做好针对性的备课。在传授学生新知识的之前,最好先给学生提供一些涉及面较广、概括书评高的引导材料,用学习者能理解的语言和方式来表述,并且在组织学习材料的时候要注意所用到的学习材料本身必须具有逻辑意义,这样才能更好地使用上述的教学方法。
对非计算机在专业的学生进行VB教学的时候要注意上述的两个问题,通过实践表明,采用文中所述的教学方法能收到良好的效果:
第一、学生知道自己在学什么,并能知道知识的重点要点,这样学生在学习的过程中就有的放矢,从而可以促进其学习。
第二、学生知道如何学。通过向学生讲解学习的方法,能够促进学生更好的掌握知识,为学生自学和自我提高打下了基础。
[1]谭顶良.高等教育心理学[M]. 南京:河海大学出版社.2 0 0 6:3 3
[2]周川.简明高等教学[M].南京:河海大学出版社.2006:119-120
[3] Eric Grimson, Jhon Guttag. Introduction to Computer Science and Programming[EB/OL]. http://download.v.163.com/dl/open/ 00DL0QDR0QDS0QVW.,ht2m0l11-5-20
[4]孙建国,海滨.Visual Basic实验指导书[M].苏州:苏州大学出版社.2 0 1 0:9 7
G642
10.3969/j.issn.1001-8972.2011.16.133
张红伟(1 9 8 2-),男,汉,江苏徐州,助教,硕士研究生,研究方向:计算机网络与信息安全。