APP下载

中职《VB程序设计》分阶段分层次教学探究

2018-02-24张元雪方峥郑金菊

电脑知识与技术 2018年34期
关键词:VB程序设计层次性教学方法

张元雪 方峥 郑金菊

摘要:在传统的VB程序设计课程的教学过程中,基础知识及其综合运用之间还存在着较为明显的脱节,学生之间的客观差异使得传统的教学方法无法满足各个层次的学生,根据学生认知的阶段性以及教学内容难易的层次性,提出一种针对性的教学方法——分阶段分层次教学法,即在不同的教学阶段为不同层次学生针对性地安排不同的学习任务,以满足在某一阶段不同层次的学生对于VB程序设计的学习需求,达到各个层次学生编程能力的提高。

关键词:VB程序设计;分阶段分层次教学;层次性;教学方法;编程能力

中图分类号: G433        文献标识码:A        文章编号:1009-3044(2018)34-0124-03

1前言

学习计算机基础编程有助于培养学生的信息素养,并且对于中职学校计算机类的相关专业来说,打下良好的计算机编程基础对今后就业和继续学习都尤为重要。[1]计算机VB语言全称是Visual Basic, 是在基于Basic的语言之上所进一步设计和运行出来的,其功能强大,且运用广泛,加入进行了结构化和可视化,学好这门技术语言对学生今后使用计算机有很大的帮助。VB课程是中职计算机类专业的一门必修的基础课程,但其教学内容比较乏味,偏重于实践,所以对于中职的学生来说,传统的课堂教学也就不能满足学生的学习需求。

传统的课堂教学以书本例题讲解为主、上机练习为辅,而这样造成的一个现状就是,学生往往会在理论知识考试中取得良好的成绩,但在上机操作考试这一块上结果往往差强人意。这就表明,传统课堂教学下,相对于用程序解决实际问题而言,学生更擅长做卷面习题。[2]目前针对这一现状,也有很多研究者进行了研究并针对性地提出了一些教学方法,例如任务驱动教学法、项目教学法、启发式教学法等。这些教学方法有助于学生构建计算机编程思维,提高学习效果,激发学习动机。但这些方法在知识点梳理的系统性上存在一定的缺陷,并且对于学习能力稍弱的学生来说,没有达到一个循序渐进的过程,由此这些方法也有一定的局限性。

2 中职VB教学现状分析

中职《VB程序设计》教学分为理论教学和实践教学,理论教学是为了让学生掌握编程的知识点,例题一般以该章节的知识点为主,而在实践教学中则会注重培养学生综合分析问题和程序设计的能力,二者之间的差距和矛盾导致了学生会出现“课上可以跟着老师写程序,课下就不知如何下手”的现象。[3]在过去的案例驱动的教学方法中,具有良好能力的学生可以轻松跟上,但逻辑思维能力差的学生仍然听到一团糟,他们学到的知识似乎也不能完全理解。总的来说,学生在其学习过程中常出现以下问题。

1)问题分析以及程序设计能力弱。在学习过程中,学生的理论知识与实践脱节。他们可以掌握单个句子的语法,但无法理解其语义,逻辑思维能力相对缺乏,很难将实际问题转换为伪代码并疏通问题的解决过程。[4]如何结合学生的实际认知水平让学生接受程序设计相关概念, 并能灵活应用是课程教授的一大难点。学生在编写程序的时候,定义变量类型随意,没有模块封装的意识,所有的代码写在主程序中,引起代码的冗杂,代码阅读性较差。

2)程序编写格式欠规范。程序编写格式的不规范主要体现在两个方面,一是随意对变量和函数进行命名,学生虽然跟着课本上规定的命名规则进行命名,但是定义出来的函数名却没有代表意义。如定义一个求和函数:Function getSum(),学生在练习时便随意定义一个函数名,如Function abc(),这样运行出来的结果没有错,但是这个函数名却没能体现出这个函数的意义所在。二是程序语句书写任意,在语句缩进对其上不重视,最后在程序出错时,程序可读性差,错误往往难以检查。

3)程序调试能力弱。在VB程序设计教材中,重视强调语法,例题相对简单,学生在程序代码编写完成后直接运行能很快得出正确结果,而在教学中,也极少有教师会去强调调试工具的使用,这就使得学生在平时的练习中对调试工具使用得较少,甚至几乎不用。因此,当学生在遇到稍微复杂的逻辑错误时或者运行错误时,debug根本不知从何处下手。

4)程序测试意识薄弱。学生在将书程序编写完成后直接运行,如果得出的是正确结果,学生就会认为程序代码没有错误,便以为编程工作已经完成,但是学生却不知道只有在任何情况下程序都能正常运行,并能得出正确结果结果的程序才是正确的,而这就需要一项重要工作,那就是程序测试。例如求两个数的商,学生将两个数都定义成int型,在输入能够整除的两个整数时,得出的结果便是对的,但是当输入小数或者两个不能整除的整数时,结果就不对了。

5)自主解决问题的意识薄弱。理论与实践的脱节导致大多数学生对学习兴趣的降低。在学习过程中很容易处于被动学习状态。遇到问题时,学生首先想到的是问老师,缺乏独立思考解决问题的能力。然而在程序设计中,遇到问题时解决问题的第一人学生应该想到是自己,然后再是他人。

3 中职VB分阶段分层次教学方案探究

程序设计的学习目的不仅是掌握基本语法知识点,更重要的是培养学生掌握常用的算法并且能够利用计算机语言设计程序解决实际问题的能力,也就是实际问题程序化能力。[5]针对学生VB课程的学习现状,以VB课程内容和学生学习的阶段性和层次性为基准,采取一种分阶段分层次的教学方案以解决该课程教学中的一些问题。

3.1 中职VB教学的阶段性

认知阶段。学生初次学习VB程序设计,应该先对VB语言中基本的程序框架、基本概念、语句语法进行认知性的学习,能使用开发VB程序的平台进行简单的程序开发。在本阶段,主要学习目标就是让学生对VB程序设计有一个整体性的认知,了解程序设计中的基本知识点以及基本的注意事项。例如在学习常用控件时,先让学生了解常用控件的作用,并在上机过程中让學生随意拖拽控件进行应用,熟练对每个常用控件的使用规则。

理解阶段。在对VB程序基础知识有了一个基本的认知之后,学生应该进入一个结构化的程序构建阶段。在本阶段,学生应清楚了解基本的程序结构,即:顺序结构、循环结构、选择结构,并要求学生能读懂程序、根据题目设计并实现简单的算法。本阶段上机练习较多,训练学生的编程思维以及算法设计,以经典习题练习为主,如求水仙花数、100以内的偶数和、数字钟表程序等。这一阶段对于相当一部分同学来说已经具有较大的难度,但这个阶段是教学中的重中之重,能够为程序设计的综合性应用打下坚实的基础。

设计阶段。通过认知阶段与理解阶段的知识积累与程序编写训练,在该阶段,学生应该学会针对问题设计程序。程序设计遵循自顶向下、逐步细化的原则,设计过程中应具备模块化意识,将问题分解成模块一一解决。本阶段考察的是学生算法思维与语法相结合的综合应用能力,也是评判本阶段教学目标完成度的主要指标。

3.2 中职VB教学的层次性

学生能力的层次性。这是学生之间客观存在的差异性所造成的现实,学生自身的思维能力以及创新能力决定了每个学生在学习VB编程过程中所体现的学习层次的非一致性。但从学生的学习能力方面来看,就表现出明显的层次性。学习能力较强的学生能够在学习内容的掌握上比较牢固,学习积极性较强。学习能力一般的学生,在基础知识的掌握上比较扎实,学习动机一般。学习能力较弱的学生则在基础知识的掌握上不牢固,并且学习动机不强。

教学内容的层次性。通常情况下,一般将VB的教学内容分为三个层次类型。第一层,也就是基础层一般为例题验证型,针对该类型的教学内容,通常是是学生在进行上机实践时,将例题输入到VB开发平台中进行检验,或者要求学生对例题类似的题目进行代码的模仿编写。这样做是为了让学生加强基础知识的储备,为后续的程序设计联系打下扎实基础。独立设计型,该类型的教学内容在以基础知识的掌握前提下,在教师为辅的帮助下,学生独立进行问题分析、算法设计、代码编写、结果调试运行,有助于培养学生的编程能力,debug能力以及问题分析能力。创新提高型,该类型的教学内容不仅仅局限在某个问题,而是拓展到了整个项目的设计与编写,如超市收银台系统编写、车库停车管理系统编写、图书馆管理系统编写等,主要目的是为了加强学习学以致用、创新能力的发挥。

4 中职VB分阶段分层次教学方案设计

根据VB教学的阶段性与层次性探究设计出中职VB程序设计分阶段分层次教学方案,如图1。

认知阶段是学生初步接触编程的阶段,也是让学生对程序产生兴趣的阶段。兴趣是最好的老师,因此在本阶段主要目的是在于培养学生对VB学习的兴趣。本阶段的教学内容较为基础简单,在学习前期的差距并不明显,教师可配合例题验证型的教学内容提供规范典型的案例作为学生练习的主要资料,并且要求学生代码书写注重规范。在开始编写程序之前,要养成先分析问题,再进行流程图绘制的习惯,思路清晰之后,再进行静态编程,最后进行动态调试。同时,要求学生总结课程中常见的错误,当课程运行错误时,有必要培养学生的调试意识,由此发现错误,解决问题,而不是一味地看着代码找错误。该阶段的内容较为简单,以培养习惯和打基础为主,因此绝大多数都能从认知阶段过渡到理解阶段。

在理解阶段,教学内容的难度以及内容量都有所上升,学生之间差距逐渐明显。因为难度的增加,部分学生逐渐对编程学习失去兴趣,对编程的新鲜感也不复存在,编程中的挫败感使学生的热情下降。在该阶段前期,给学生设计的学习内容在增加一定难度的基础上需要注意趣味性的设置,示例验证类型和独立设计类型的题目需要相互结合,让学生逐渐适应理解阶段教学内容的难度。这两种类型的题目对不同层次的学生都有所照顾,对于学习能力稍强的学生积极性有所保持,对于学习能力稍差的学生,可以激发其积极性。在该阶段教师设置的题目须具有一定的导向性,例如要求学生在解决一个问题时多维度思考,同一种功能用三种不同的循环结构实现,程序实现之后进行测试,让学生掌握测试的方法和技巧,出现错误时,让学生逐渐学会使用debug工具,培养学生debug的能力。

在设计阶段,学生的能力都有了一定的提高,此时给学生布置的教学任务需要以综合类练习为主,如针对一个项目。在进行项目开发时,教师通常采用分组合作的方式,让学生以小組为单位选择项目或者自拟项目,自行进行项目的设计,包括数据流分析,程序流图的绘制等。但所设置的项目在开发过程中需要注意专业知识涉及范围尽量不要太深太复杂,保证学生目前的认知范围能够解决项目开发过程中的问题。在本阶段,学生之间的差距也较为明显,对于编程能力较强的学生,教师应对学生进行方向性指导,适当点拨,鼓励他们进行自主探究与创新;对于编程能力一般的学生,教师应为他们提供适当的辅导,例如对项目进行流程分析、定义函数接口等;对于编程能力较弱的学生,教师则可以稍微降低项目的难度,要求学生能够完成项目的基本功能,并给学生提供帮助,重在使这部分学生掌握编程的思想。

5 结 语

从理论上讲,VB课程分阶段分层次教学方案可以很好地解决学生学习编程的困难,激发学习的积极性,弥补传统教学方法的不足。在这样的教学方案下,学生的编程能力以及计算机思维都可以得到一定的提高。在进行最后的设计阶段,学生的各项能力都能得到一个较为完整的应用。当然阶段式分层教学法在理想情况下得出的结果都是比较良好的,但也不排除特殊情况。教师在采用任何一种教学方法时,都不能一味地模式化,进而造成教学思维的固着,因此教师在操作中要因人而已,不断探索新的变式。

参考文献:

[1] 张明明. 职业高中VB语言程序设计的分层教学[J]. 考试与评价,2017(4).

[2] 卢瑾,张健,陈晋音. C语言程序设计阶段式分层实验教学研究[J].计算机教育, 2014(14).

[3] 裴春琴,张静,李荣. 计算思维下的分层教学模式在《VB程序设计》中的研究与实践[J]. 现代计算机,2017(9).

[4] 王芬,黄晓涛,吴驰. 非计算机专业VB语言程序设计课程教学探索[J]. 计算机教育, 2013(21).

[5] 曹海英,元元,郝兵. C程序设计阶段式分层实验教学探究. 电脑知识与技术,2017(34).

[6] 赵爱美,张羽佳,谢粤芳. 混合教学模式在项目化程序设计课程中的探索与实践[J]. 计算机时代, 2018(9).

[7] 周彦斐. 中职VB程序设计课程有效教学模式初探[J]. 计算机光盘软件与应用, 2014(6).

[8] 黎蓉. 中职程序设计课“案例+尝试成功”教学模式的实践探索[J]. 当代教育论坛(管理研究), 2011(4).

【通联编辑:王力】

猜你喜欢

VB程序设计层次性教学方法
教学方法与知识类型的适宜
浅析VB程序设计教学方法的改革
探析辨证论治的层次性
价值观层次性浅析
耕地多功能的层次性及其多功能保护
我的教学方法