资源预览内容
第1页 / 共5页
第2页 / 共5页
第3页 / 共5页
第4页 / 共5页
第5页 / 共5页
亲,该文档总共5页全部预览完了,如果喜欢就下载吧!
资源描述
PASCAL 教学的几点思考丹阳六中 冷汇军摘要 任务驱动法是一种建立在建构主义教学理论基础上的教学法。文章从分析任务驱动教学法的优势入手,探讨了如何有效地把任务驱动教学法运用于初中计算机教学当中。根据皮亚杰提出的建构主义理论中的支架式教学的思想,先从整体上让学生把握住程序的框架结构,再细化流程图,最终将自然语言转化为计算机语言,比较轻松地达到了大纲要求的教学目标。【关键词】:建构主义、支架式教学、任务驱动法一、 引言(一)问题的提出在教育部颁发的信息技术大纲中,要求中学生必须把握一门计算机高级语言。但编程又是高中信息学中公认的难点。学生普遍反映学不懂,抵触情绪比较严重,甚至要求不纳入会考范围。(二)解决问题的思路在中学的教材中,学习的高级语言一般是 Pascal。觉得 Pascal 语言虽然相对于中学生来说比较难学,但假如教师能正确采用相应的教学方法,学习这门语言应该是不困难的。为了对比不同的效果,笔者选用了两个相同水平的班级:高一(4)和高一(5) 。 (4)班学生教学的方法是完全依据教材的进度及内容安排,称为传统教学法;(5)班则采取任务驱动法。将此两种方法对比教学后,觉得效果大不一样。随后的两年中,我根据实验个体性质进一步修改了该教学法,扩大了实验研究的对象,在总共 20 多个班中进行对比实验,得到了非常显著的实验效果。任务驱动教学法是一种建立在建构主义学习理论基础上的教学方法,是指教师将教学内容设计成一个或多个具体的任务,力求以任务驱动,以某个实例为先导,提出问题,引导学生思考,让学生通过学和做,掌握教学内容,实现教学目标,培养学生分析问题和解决问题的能力。任务驱动教学法提倡教师指导下的、以学生为中心的学习。在整个教学过程中教师起组织者、指导者、帮助者和促进者的作用,利用情境、协作、会话等学习环境要素充分发挥学生的主动性、积极性和创造性,最终达到使学生有效地实现对当前所学知识的意义建构的目的。二、理论依据教育心理学的研究表明,学生在接受新知识或接受新技能培训时,假如有一个正确的、积极的心理预备(求知欲) ,则其接收的效率将会高出被动接收效率的一至两倍。长期处于被动接受的状态还会产生压抑、厌倦、对抗、惧怕等情绪进入心理的误区,严重影响学习的效果。而中学生在编程学习的过程中,普遍表现出“厌学” 、 “难学” 、 “被动学”的现象。而出现这种现象的原因,主要是传统的编程教学模式设计以及在校大学生的学习模式为样本,在难度上进行了部分调整之后,按部就班地从最烦琐而且暂时无法应用的基本理论学起,让学生首先在心理上产生了一种抗拒的意识。但学生难以在开始阶段将离散的知识点系统地接受,等到开始了实际的编程练习时,早就将前面的知识忘记了,而且已经索然无味了。要让学生能够学好编程,必须解决好几个关键问题:培养学习的爱好创造学好编程的情景变“老师灌”为“学生学”改变现有传统的知识结构,创造新的目标框架。建构主义理论认为, “在学习过程中,要以学生为中心,在整个教学过程中要以教师为组织者、指导者、帮助者和促进者,利用情景、协作、会话等学习环境要素充分发挥学生的主动性、积极性和首创精神,最终达到使学生有效地实现对当前所学的知识的意义建构的目的” 。建构主义的教学方法比较多,其中,支架式教学的特点非常适合中学信息学的编程教学。支架式教学要求为学生学习建构一种概念任务。这种任务中的概念是为发展学习者对问题的进一步理解所需要的。为此,事先要把复杂的学习任务加以分解,以便于把学生的理解逐步引向深入。它与前苏联闻名心理学家维果斯基的“最邻近发展区”理论是一脉相传。这个“最邻近发展区”中,学生的实际发展水平就是他们有学好编程的想法,但是,烦琐的命令和语法让他们觉杂乱和烦琐,没法感知整个结构化程序设计的整体风格和结构。这时,老师就要指导他们达到潜在发展水平之间的距离,即每个学生能够学好编程,但要在老师的帮助下从一个水平提升到另一个水平,这样不停地提高,真正使学生走在发展的前面。为此,老师要设计“脚手架” ,按学生目前水平和学习的主题,用“最邻近发展区”的要求建立任务,然后将学生引入问题情景。当进入了学习情景中后,学生会慢慢展现其独立探索的一面,他们会主动提出问题了,这时,老师要循序渐进地引导,同时指导他们协助学习。任务驱动法正是在这种理念指导下,根据中学程序设计的特点而创设任务,找到学生的“邻近发展区” ,再发展到第二个发展水平,营造编程学习情景。传统的编程学习是从复杂的语法格式开始,一步一步地“系统”地学习。但这种教学方法轻易让学生一开始就陷入到复杂的的语法规则中,而且在学习这类知识时还不知道其有何用处、如何使用。因此,不少中学生直到学习到后面的顺序、分支、循环程序设计时才明白前面内容的意思。但是,大部分学生早在开始编程之前就已经丧失信心了。这种教学方法是“先细后粗” ,让学生直到后面阶段才真正明白什么是程序。任务驱动法是支架式教学法在中学编程教学中的一种应用,它先从整体上让学生熟悉什么是程序,然后将每一个具体的程序用流程框架图画出,这只是一个“脚手架” ,但足以让学生目的明确。接下来就是细化每一个框图,将每一个图分解成更加细小的任务。当任务小到一定程度时,便是一条不可再分解的语句了。到这个时候,学生便会比较轻松地接受这条语句。这种教学法不以具体的语法规则为教学重点,而是重在培养学生整体熟悉性,对于具体的语法规则就变成“任务驱动”的方式去学习了,很轻易培养学生主动学习的能力。三、传统教学法的教学安排传统教学法安全按照教学大纲要求,安排为 14 课时,学习的内容为:计算机语言的分类 (1 课时)Pascal 语言的编辑界面(1 课时)Pascal 语言的基本符号(1 课时)Pascal 语言的程序格式(1 课时)标准函数和表达式 (1 课时)输入输出语句 (1 课时)顺序程序设计 (2 课时)条件语句 (2 课时)分支程序设计 (2 课时)过程和函数 (2 课时)笔者就按照这种教学设计,从最基本的内容一步一步讲下来。第一节课,学生学习计算机语言的分类时,由于介绍了大量的新东西,学习听得比较轻松,而且学习积极性高。在学习第二节课时,学生开始觉得比较空洞了。因为他们还不知道什么是程序就要进入编程界面去熟悉各种操作。第三节课就觉得很枯燥了,觉得似乎在背很枯燥的英语单词,开始有人不听课了。从第四节课开始,学生满腔激情开始淡没,听得很吃力,又不知道记那么多的标准函数做什么,开始被动地接受东西了,反正教师讲什么就听什么,但不知道学了这些东西有什么用。到了第 7 节课左右,已经有 50%左右的学生已经跟不上教师的进度,表现的状况是上机不能编写程序,上课听不懂。到了内容的末期,60%的学生完全听不懂教师讲的内容,20%的学生能听懂大部分,但不能编写程序。只有 20%的学生能跟上教师的进度,在老师的帮助下能正确调试出程序。综合这个过程,将能跟上教学进度的学生比例曲线由下图表示:四、任务驱动法的具体实现笔者发现,不少学生在学完编程课程后连什么是程序都不知道。不少教师在讲授程序课时过多地沉溺于编写程序的规则上去了,一开始就让学生记忆很多符号和保留字,在编写程序时没有从整体上去把握思路,陷入到具体的语法中去了。于是,在(5)班的教学过程中,笔者没有按照大纲的顺序,而是以生活中的实例讲什么是程序,程序设计的思路,如何画流程图,如何将流程图细化,如何将自然语言转换成 Pascal 语言。到此为止,程序的源代码就出来了。以这种方法,笔者的内容及课时安排如下:什么是计算机语言,语言的分类什么是程序,以生活中的事为例,让学生明白程序其实很简单。如,早晨起床的程序如下:从床上醒来穿衣洗漱吃早餐收拾书包上学马上有同学说第 2、3、4 步可以交换顺序。于是笔者告诉学生在编写程序时哪些步骤可以交换,哪些不能交换。学生记忆深刻。用流程图来表示程序。 。在本课时里,不分顺序、分支以及循环三大章节的内容,全部纳在一起讲解。在这里,便开始搭框架了,是最粗略的框架,主要教学目的是让学生从整体上把握结构化程序设计思想。如:笔者发现,经过这两节课后,将教材中的课后练习中较难的题让学生去完成流程图,80%左右的学生都能完成。这个结果让笔100%75%50%20%1 2 3 4 5 6 7 8 9 10 11 12 13 14 能听懂学生比例者倍感欣慰。细化流程图。这一步很重要,主要让学生将粗略的流程图中的每一步细化,以适合程序设计的习惯。比如, “找出两个数中的最大数”就这样细化:1.给变量 A 读入一个数2.给变量 B 读入一个数找出两个数中的最大数3.比较 A、B 的大小,取最大数4.将最大数存入变量 C 中在这一步时,学生已经进入到了编程的情景中,此时学生不会觉得这个过程费解,也就是说学生还保持着学习的爱好。将细化后的流程图转化为程序这一步的工作量最大,主要是将自然语言转化为计算机语言。比如, “给变量 A 读入一个数 5”就转化为“A:5;” 。在这个程序上再将保留字、标准函数、输入输出语句教给学生,笔者发现出其的顺利,大部分同学可以借助教材进行语言转换了。这个过程中,教材只是作为查找语法及函数的资料。笔者当场在黑板上布置了一道作业题,大约 70%的同学能够正确地完成,剩下的 30%的同学或多或少地完成了部分,没有动不起笔的学生。而这道题,笔者在(4)班学生中测试的结果是仅 30%左右的学生能写出程序。而更关键的是, (5)班的学生一直都没觉得学习编写程序是一件难事。其实在进行这一步时,学生早就迫不及待地开始提问了:这个语句应该怎样完成?那个语句该怎么做?有些学生甚至自己在书上找答案了。这就已经变成主动要学了,到了这一步,老师讲述已经为辅了。上机调试程序。这一步其实在上一步就已经穿插进来了,学生只需记住几个常用的操作步骤就可以完成程序的编译。扩展知识的讲解在(4)班学生中,到最后一节课时,早就被“折磨”得痛苦不堪了,根本不敢扩展。而在(5)班学生中,学生已经处于不同的高度了,笔者从结构化程序讲到面向对象程序设计,从 Pascal 讲到 VC,从 J2EE 讲到。NET,让他们明白这些编程工具很多只是语法上的差异,关键是把握编程的整体思想。可以用下图来表示(5)班学生把握知识水平的情况:1 2 3 4 5 6 7 8 9 10 11 12 13 14 100%75%50%20%能听懂学生比例四、任务驱动法应用面的扩大研究由于改变了教学方法,不容质疑,任务驱动法是帮助学生学习程序设计的好方法。通过这次成功的探索,我感觉在以后的教学中,除了这种教学方法的具体过程外,还有以下值得借鉴的地方:1 要敢于打破教材的束缚,寻找最适合学生认知特点的教学方法。2 在教学内容的体系上合理安排,让学生能够系统地、连贯地学习知识,有利于学生循序渐进地学习。3 在某些知识点的教学上,应该让学生先从整体上把握全局思想,再具体到每一个知识点,让学生思维清楚。4 爱好是最好的老师,让学生对所学的知识保持永恒的爱好,学习效率会大增。结束语任务驱动法是在建构主义理论中支架式教学法的一种应用,它创立了学习编程的情景。学生在编写一个程序的过程中,先是明确了问题,搭好了框架,然后带着问题去查书,去找那些语法规则,然后相互讨论,最终以多种形式编写好程序。两种方法的教学效果相差非常明显,但为什么现在的教材不改变教学模式呢?原因可能是这样:Pascal 语言一直都是大学的教材,很多年来大学教材都是按照最传统的模式编写,这对于大学生来说能够接受,其矛盾还不是很突出。后来将 Pascal 引入中学后,习惯上的模式难以改变,同时也为了追求“系统”的编写模式,所以给中学教学带来了很大的麻烦。但不管怎样,作为一个普通的基层教育工作者正在 pasca
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号