边楚女
最近一个月,我听了十余节随堂课,发现部分教师在教材处理上有一些困惑。例如,在讲授Photoshop《多变的文字》一课时,某位教师一直让学生设计各种各样的文字,但技术上却没有发生太大的变化。学生刚开始很有兴趣,后来就产生了厌倦感。课后交流时,我建议他把这块内容与其他内容整合,或者设置有技术层次的任务。可这位教师说,教材上安排的就是一节课,担心把后面的东西拿上来教会偏离教学,拓展太多也怕学生接受不了。再如,在讲授《电子邮件》一课时,某位教师把教学重点放在了让学生申请邮箱,发送、接收邮件上。有学生私下嘀咕:“这些我们都会了,干嘛还要教呢?”这位教师说,其实知道学生对这些操作比较熟悉,但教材上有这些内容,怕不教不好,万一有些学生不会呢?还有一些教师认为,将书上的教学案例替换成学生喜欢的内容就是有效的教材处理。
那到底应该怎样进行教材处理呢?
围绕上述困惑,我突然想起一句话:“用教材教而不是教教材。”相信大家肯定能说出对这个观点的正确理解:教教材是以教材为本,用教材教是以学生为本,体现了不同的教材观。教教材的教师总是把教材奉为权威,教材有什么就教什么,教材怎么说就怎么教,教材内容陈旧了也舍不得丢弃。而用教材教是把教材当作可参考的范本、一种再开发的课程资源,根据学生的需求和学情,在原有教材基础上建构“新教材”。大家都懂这个道理,可为什么在具体实施时却难以落实以学生为本的教材观呢?
下面我以《用循环语句解决一些共性问题》一课为例,与大家一起探讨交流。这一课来源于浙教版信息技术基础第三章第四节“算法及其实现”中关于循环结构语句的内容,但教材只用一个n阶乘的例子解析了循环结构,并用不到半页的内容展示了for语句和Do语句的结构形式。而在具体教学时,这块内容需要3个课时的教学,这就需要教师充分把握循环结构及其语句的核心,整合、拓展知识,充实例子,让学生经历完整的意义建构过程。
《用循环语句解决一些共性问题》是我设计的第一课时,我设定这节课的主要教学目标为:感知循环结构原理,初步理解for语句和Do语句循环语句的结构和特征,通过实践比较发现两种语句的区别;通过模仿、迁移、提高、探究等阶段的学习和实践,归纳循环语句解决问题的共性和适应性,初步理解循环语句解决问题的基本思想和方法;通过实践体验遵循规则的重要性,树立规则意识,感受始终坚持、不断积累才能获得成功的价值品质。
课堂教学
1.热身讨论,引发思考
(1)热身:如图1所示的顺序结构程序段,请问该程序段运行后,s=?i=?
教学阐析:早前的教学设计,我并没有设计这个环节,但我发觉在讲解循环体语句时,学生对变量s和i不断发生变化的过程较难理解。为突破这个瓶颈,我把循环体中的语句分解为他们能理解的顺序结构语句,并放在课堂最开头进行热身思考。学生在思考的过程中自然会生发一些问题:这些语句有什么用、这样重复有什么目的、这些问题的产生能否有效呼应后续学习等。同时,学生往往回答s=10,i=5,我却把答案说成s=0+1+2+3+4,i=1+1+1+1+1,用过程描述结果,以帮助学生更好地建构新知。
(2)讨论:请问下列的表达式或词语(如图2)有什么共同的地方?
经过分析回答和总结后,学生发现每个表达式或词语在推进过程中数或量的变化有规律。随后教师指出,要解决这些数或量有规律变化的问题,我们可以请循环结构语句来帮忙。
教学阐析:对初学者来说,循环语句是程序设计学习中的重点和难点。要突破的关键不只是理解循环语句,更是让学生在今后的程序设计中学会可以用循环结构来解决一些问题,所以学生一定要找出这些问题的共性,并在解题过程中找出规律,提炼方法。
2.提出问题,理解算法
我先解决第一个问题:计算s=1+2+3+4+…+n,即展示该问题的流程图(如图3),让学生通过流程图来理解解决问题的思路。
教学阐析:从一个简单又充分体现循环思想的问题入手,让学生理解循环结构的原理。直接展示流程图,是为了节约教学时间,更好地聚焦后面的教学重点。
3.用for语句解决问题
我直接向学生展示s=1+2+3+
4+…+n问题解决的for循环语句程序段(如图4),并简要讲解for语句语法,然后在代码窗口,边输语句边讲解强化。
教学阐析:直接展示语句体,能让学生建立一个宏观的整体结构。同时,如果教师单纯讲语句用法,会让学生感觉很抽象,而教师在代码窗口中边输语句边讲解,能让学生体会到问题解决的全过程,有利于学生在独立操作时作对照。
4.学生实践,初步迁移
学生用for语句完成s=1+2+3+
4+…+n,完成的学生自主研究后两个问题。为了使课堂教学紧紧围绕重点,我事先设计好窗体(如图5),输入和输出部分代码也已经提供给学生,只留白循环体语句(不含赋初值语句,如下页图6)让学生完成。
教学阐析:学生模仿刚才教师的操作完成第一个任务,然后自主研究s=1*2*3*…*n和s=1/1+1/2+1/3+…+1/n两个问题,大家能看出这两个问题的设计点吗?
5.解惑释疑,落实新知
对刚才巡视中发现的问题进行解惑释疑。学生可能出现的主要问题有:程序的格式结构不规范;解决s=1*2*3*…*n问题时,赋初值语句按照惯性输入s=0;研究s=1/1+1/2+1/3+…+1/n问题时,由于对循环结构的原理理解得不到位,难以写出s=s+1/i。我对这些可能出现的问题进行有针对性的讲解后,让学生继续完成三个for语句任务,完成的学生自学Do语句。
教学阐析:要求学生自主研究的两个任务:①如果赋初值i=0,s=1*2*3*…*n运行时结果为0,教师先不提醒,让学生自己去发现问题。②在之前讨论的时候,学生对s=1/1+1/2+1/3+…+1/n的变化规律已经有了初步认识,知道分母在有规律地发生变化,所以我在用程序具体实现的时候只考验学生的分析能力和实际运用能力。
6.用Do语句解决问题
向学生展示Do语句解决s=1+2+3+4+…+n的语句体程序段(如图7),然后我保持沉默,让学生感受一下其与for语句描述上的区别,接着简要讲解Do语句语法,让学生思考一下其和for语句的区别,最后在代码窗口,边输语句边讲解强化。
教学阐析:不直接阐述for语句和Do语句的区别,让学生自己一步步地感受理解,再通过接下来的实践去真正掌握,这样的学习过程才能让学生真正建构起知识。
7.实践研究,提升认知
学生用Do语句完成和for语句相同的三个任务,完成的学生尝试总结两种语句的区别。当有大多数学生完成任务时,我把答案发给学生,让其自主检查或让学习有困难的学生对照理解,完成的学生开始研究探究题。
教学阐析:这个环节学生可能遇到的问题是:①由于受for语句惯性,忘了赋初值i=1和循环体语句i=i+1。②由于输错代码或不理解语句,Do语句结构出现死循环。但这些问题和错误都可以转化为教学契机。
8.探究提升,深化认知
当完成前面的基本任务后,学生开始研究探究题:三毛打算用一种有趣的方法记英语单词,第一天记一个英语单词,第二天记两个,以后每天都比前一天多记一倍的单词,请问他要记住1000个单词需要多少天呢?请选择一种合适的循环语句解决该问题。
教学阐析:对于这个问题,我让学生自行编程解决,经历问题解决的整个过程。学生拿到问题时可能会先用for语句解决这个问题,然后发觉行不通,转而用Do语句,但也没能很快地解决这个问题。同时,输入和输出语句、赋初值、循环体语句的先后顺序也都需要学生设计思考。不必急于追求答案,因为这个思考的过程就是一个很好的知识增长、拓展、融合和内化的过程。这个有思维难度的问题,能让学生进一步体会循环语句的算法思想,将利用循环语句解决一些共性问题提升到一个新高度。
9.提出问题,余音绕梁
在学生研究探究题的过程中,我在屏幕上展示并轻声提醒学生关注三个问题:①哪些问题可以用循环语句来解决?②哪些问题可以用for语句和Do语句来实现?③哪些问题适宜用for语句或Do语句来实现?
课堂最后,我轻声旁白:“有些同学通过认真思考和实践解决了探究题,但事实上还可以更深入地研究;有些同学通过不断修正错误才得出结果;有些同学可能还没有突破,没事,建议把这个问题带回去再思考。而这个解题的过程本身就是循环语句的核心思想——只要坚持不懈、日积月累,就一定能实现梦想。”
教学阐析:这节课我并没有给出解决这个探究题的方法,因为方法和答案就在学生的不断思考和实践中。教师们,你们认为呢?
课堂综述
教材上薄薄的内容,需要教师充分处理和科学设计,使教材知识变得深厚,变得有逻辑,变得可教可学。循环结构语句是学生学习算法的一个里程碑,在学习中既要有量的积累,也要有方法的总结和提升。在课堂实施时,我在教材的引领下,挖掘核心知识,在设计和实施上把握了五个关键点:①将for语句和Do语句放在同一节课中,通过两种语句的认知冲突和有效对比,帮助学生有效突破难点。②设计三个难度分层的问题,让学生在解决不同类型题目的过程中产生认知冲突,并在消融这些冲突中初步掌握for语句和Do语句的用法。③紧凑地推进课堂,让学生解决多个问题,在量的累积中熟悉语法规则,获得解题方法。④无痕设置模仿、迁移、提高、探究等阶段,学生能踏着任务阶梯,走向一个个新的高度。⑤提炼循环语句的核心,“用循环语句解决一些共性问题”这一标题的设置使学生脑洞大开,豁然开朗。
观点总结
教材处理就是要解决“教什么”“教什么更好”“教什么才能更好地让学生有所发展”这三个递进问题。因此,备课时不要紧盯教材,要跳出教材,把目光放在学生的现有基础和发展要求上,一切从“学生如何学习才能思考得更多、动手得更多、理解得更多、收获得更多”出发,大胆地对教材进行增补、删减、重组、置换、整合等。虽然教材是静止的,但我们要把教材用活,打破禁锢,对教材作二次开发;要提炼教材思路,优化教材内容,改变“打碎教学”的怪圈,建构课堂教学的子系统。我们不能成为教材的代言人,而应成为教材的经纪人、改造者和革新者。有时候,对一个教学序列的微调、对一个问题和任务形式的简单改良,就能产生意想不到的效果,其实这就是教材处理的大智慧。课堂不是给学生一个答案,而是激发学生探寻答案的欲望,陪伴学生走过思考的过程。所以不要把教材现成的答案、结果及规则迫不及待地告诉学生,而应设计阶梯任务,学生通过大任务的分而治之、小任务的逻辑关联逐步推进与消纳。
教师们,你是用教材教还是教教材呢?