问题驱动教学法在visual basic程序设计中的应用分析
2021-04-19张金玲张红艳
张金玲 张红艳
1. 特警学院 北京 102211;2. 湖北黄石阳新实验小学 湖北 黄石 435200
现代教学理论认为,在课堂教学中,教师应以问题为纽带,教学内容讲授以问题为驱动。问题不仅是贯穿整个教学过程的主线和学生学习动力的燃料,也是联结双方的最佳纽带。基于问题的学习理论是构建主义认知心理学派中的一个分支。该理论认为知识不是通过教师传授灌输学到的,而是学生在一定情境中,借助教师等的帮助实现的。教学过程中,通过创设问题情景,不但可激发学习兴趣,还可以推动学科知识点的习得。设计良好的问题不但可以活跃课堂气氛、激发学习动力、引导学生积极思维并主动的进行探究活动,还可以深入学生心灵,实现老师与学生、学生与学生之间的情感交流。因此问题驱动教学法是一门值得研究的教学问题。
1 Visual Basic程序设计课程分析
Visual Basic是面向对象的事件驱动的可视化编程语言,可用于开发windows应用程序,是高校非专业学生一门重要的计算机编程语言课。VB程序设计是一种可视化的编程,即首先进行界面设计,在屏幕中画出各种图形对象,然后设置各对象的属性,接着编写各对象实现程序功能的代码。VB程序设计采用事件驱动编程机制,即由用户操作引发某个事件来驱动完成特定功能,这是与其他面向过程语言的一个重要区别。VB程序设计中将程序和数据封装于一体,隐藏具体细节,程序开发员只需要关注自己设计的程序功能和属性,同时VB程序语言继承自BASIC语言,采用三大基本控制结构,模块化的程序设计。总的来说,VB程序设计是一个面向对象的结构化程序设计语言。同其他编程语一样,这门课程既强调理论知识的理解掌握,又要求学生熟练运用编程知识与编程技能解决简单的编程问题。由于Visual Basic的对象(窗体、控件、菜单)属性、事件和方法种类繁多,语法知识丰富,学习容易学到后面往前面,枯燥乏味。而普通高校学生经过高考之后来到大学,进入更强调自觉和自学能力的学习环境,调查发现学生上课学习积极性和主动性普遍不高,学生动手操作实践少,编程能力差。另一方面,学生学习学习风格不同,计算机编程底子不一,学习能力参差不齐。同时,普通高校教师和学生的沟通不够充分,课堂上师生沟通也不够,教学模式仍主要采用传统的以教师为中心的教学模式,学生被动学,教学模式创新性不足,迫切需改进教学策略提高教学效率。
研究表明问题驱动教学法能妥善提高学习积极主动性,促进理论和实践相结合,提高教学效果。问题驱动教学法强调“以学生为中心,以教师为主导”,强调通过创设复杂的、有意义的问题情境,设计驱动问题,激发学生主动思考积极思维,通过自主探索和合作交流等方式,在问题解决中习得知识与技能。
一切思维和能力的培养皆依赖于问题的发现、分析与解决。实践表明,以“问题驱动”为核心的教学法,以学生为主体,教师为主导,可激发学生求知欲,提高学习积极性,适应于目前《VB程序设计》课程教学,同时可以培养学生问题解决能力[1]。
2 问题驱动教学法
2.1 概念界定
问题驱动教学方法即以问题驱动教学,以问题为核心开发组织教学内容,通过问题设计,让学生围绕问题解决,实现学习目标,获得知识技能一种学习方法。教师在这个过程中是问题的设计者、问题情境创设者、问题提出者、教学流程设计者和问题评估者。新知识、新技能并不是老师直接灌输给学生,而是隐藏在问题背后,由学生通过分析解决问题逐步理解而消化吸收。问题驱动的核心思想是在教学过程中,总是不断抛出事先设计的问题,不断的引导学生分析问题,然后通过不同的方法去解决。在问题解决的过程中,逐步理解新知识点,掌握新技能。问题驱动教学法对教师的要求更高了,教师必须具备较强的课堂掌控能力和课堂教学引导能力。
2.2 方法步骤
以“问题驱动”为核心的教学活动过程可从创设情境提出问题,分析问题,解决问题和评价总结等环节展开。在教学过程中,教师提前准备好问题。问题设计不仅要求教师对教学内容十分熟悉,同时还要能掌握学生学习情况。设计良好的问题,需结合学生学情,按照教学内容、教学目标来设计问题。在教学过程中,教学围绕着学生寻求问题解决方案展开,教师的作用变成指导学生分析问题,提炼出新知识新技能,通过巧妙提出各种小问题启发思考,通过创设情境提出思考题鼓励学生讨论交流,最终运用多种方法解决问题。问题驱动教学法使得学生在积极主动地学习过程中,潜移默化的构建起新知识与新技能的框架。由上可见,好的问题决定教学成败的关键,是有效教学的重中之重,是问题驱动教学法是否有效的根本,因此驱动问题的设计是关键。
2.3 驱动问题设计要求
(1)导入问题通常在情境中提出,具有启发性和趣味性,能激发学生求知欲,促进学生积极主动思考。学生普遍对当下热门的影视剧、生活中遇到的悬疑、有比较波折情节的事物、古今中外经典历史事件、与自身未来可能从事职业相关问题等感兴趣。因此问题情境创设,需要贴近学生敏感的、感兴趣或者有启发性的方面进行创设[2]。
(2)驱动问题同样在有情境的正式任务中提出和设计,设计的问题不超纲,是教学大纲规定内容且为教学重点或难点。教学有法无定法,一切教学方法终极目的是实现对学生的培养,是实现已经确定下来的教学目标。因此,驱动问题设计不是天马行空的设计,需要在教学大纲、课程目标、培养方案、教学内容框架内的问题。
(3)设计的问题有连贯性、系统性。问题的分析与求解,与教学设计流程一致,可在潜移默化中使学生将新旧知识点串起来,深入思考,掌握所学技能。以问题为中心,基于教学大纲,服务于教学目标实现,落脚于学生知识技能的获得。对于一堂课问题设计,需要成体系、成系统,如剖洋葱一样,一层接着一层,一环接着一环,连贯而行,随着一个个问题的解决,最终让学生在主动思考积极探索中解决问题,潜移默化的学到了知识。
3 以《数据的输出-print方法》一课为例
3.1 问题驱动教学设计
VB编程的基本思路是数据输入、数据操作处理和数据输出。因此,计算机的输入输出是程序设计语言最基本的操作,也是编程语言中最基本的语法,通常在一门课之初就要讲到输入与输出的语法知识。print方法是VB中最常用的输出方法。本课主要采用问题驱动教学法,首先创设问题情境引出本课主题,接着抛出三个看似简单问题引出本节课重点内容,明确教学重难点,并使学生迅速集中注意力。接着开始进入新课讲授,逐步分析问题解决问题,并通过vb二级真题、例题、思考题等驱动问题,启发思考,引导学生讨论交流,结合VB编程特点,在操作实践中测试问题,最终通过各种方法解决问题,最后进行问题评价和巩固,对本堂课教学内容进行总结。实践证明,问题驱动教学法是否有效,关键取决于驱动问题设计[3]。
3.2 驱动问题设计实践
本次课中驱动问题设计的目的,是为了让学生在掌握VB新知识新技能的同时,培养学生深入思考,举一反三等高级思维和学习能力。设计的方法,围绕教学目标实现,结合学生学习特点、学习情况及日常学习生活中的经验,精心设计课堂驱动问题。问题设计主要从以下几个方面展开。
(1)设计导入问题引入新课
课前设计情境问题,通过问题导入教学,抓住学生注意力,明确学习方向和重点。本例中开篇精心设计三问,在课前便抛出这三个问题,请学生们思考,接着展开本节课重难点内容,带着问题明确教学内容,学生开启学习之旅。
(2)设计例题或案例以剖析难点
通过案例或例题,可由浅入深,层层深入,调动学生学习积极性,并在潜移默化逐步领悟知识点习得新技能。针对知识点,尤其是学生易错的、学习中易卡壳的或者过渡性强的知识点,需要动脑筋剖析,设计问题的层次和逻辑。通过问题案例设计和案例解析,如剥洋葱一般,通过一个个小问题,引导启发学生开动脑筋,督促动手实践逐步探索,并把知识点各个角度的拓展问题一一解决,使学生逐步完善VB知识框架[4]。
经典例题通常可以直观地将新的概念和原理运用起来,可以实现松耦合,甚至集成。一个问题提出和解决,进一步可通过更改问题的一个点提出新的问题,融入更深一层的新知识点并拓展思维。举个例子:讲解知识点Print方法分隔符中逗号与分号的区别,输出字符串与输出数值型数据的格式上的区别,是本课的一个难点,也是大纲中的重要考点。根据问题驱动教学法的思想,设计如下代码:
测试运行结果,提出问题:请分析各输出的数字及字符所在列号。
问题提出后,学生们踊跃讨论,积极思考交流,在寻找正确答案的过程中,逐步构建起自己的程序设计和新知识的框架,并将难以理解的概念原理,消化吸收掌握。
这里要注意设计的案例及问题需紧跟教学大纲,紧扣考点,锁定二级真题,设计知识点对应考点真题,帮助学生消化理解[5]。
(3)案例思考题设计,促进讨论交流,提高实验实践动手能力
设计上机操作题,引导学生动手实践,并运用新知解决实际问题。综合案例题,引导学生动手实践,并运用新知解决实际问题。
(4)查漏补缺课堂习题促进思考,轻松习得技能
VB描述性的语法繁多,容易导致教学枯燥乏味。设计小问题,让学生们在我问你答的互动中,轻松掌握枯燥的语法。课堂习题、课后布置作业,可检验学生学习效果,查漏补缺,巩固练习。