《信息的编程加工》教学课例

来源 :中小学信息技术教育 | 被引量 : 0次 | 上传用户:sangtian1
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  《信息的编程加工》是教育科学出版社出版的高中《信息技术基础》第三章第二节的内容。通过前置性评价发现,高中生思维活跃,求知欲旺盛,有较强的概括能力和逻辑思维能力。但他们接触程序设计较少,加之该部分内容本身相对枯燥,因此,激发学生兴趣,以消除他们对程序设计的恐惧心理,调动其积极性,显得尤其重要。此外,该节课的核心意义不在于让学生完全掌握编程,而应该是让他们在用编程的方法解决问题的过程中,对编程加工获得体验,并了解其内在的机制。
  基于以上认识,笔者根据学生的认知特点和接受水平,对教材内容进行了重新构建,并按程序设计的一般过程,增加了“需求分析”和“选择开发环境”,获得较好的教学效果。
  
  一、教学目标
  
  知识与技能:知道基于程序设计的自动化信息加工的一般步骤:需求分析、算法设计、选择开发环境、编程实现;知道利用计算机解决问题的基本思想方法——算法设计;了解计算机信息加工的内在机制以及编程加工的主要过程。
  过程与方法:通过体验一个完整的程序设计过程,懂得运用编程加工信息来解决问题的方法。
  情感、态度与价值观:体验程序设计的独特魅力,激发学生学习编程的兴趣;培养与他人合作交流的意识和习惯。
  
  二、教学重点与难点
  
  重点:体验编程加工信息的主要过程。
  难点:理解用算法描述实际问题,理解人的思维在计算机中发挥的作用,了解计算机信息加工的内在机制。
  
  三、教学过程
  
  (一)创设情境 导入新课
  教师展示取火柴的小游戏(如下图),请几个学生上来玩游戏,其他学生观察并思考取胜的策略。
  
  师:有没有思考过游戏本质到底是什么?是否想自己做一个类似的游戏?
  师生讨论得出,游戏其实就是专业人员设计好的用来供用户娱乐的程序,是对信息的编程加工。
  设计意图:通过游戏,自然引出课题。通过提议自己设计游戏,激发学生的好奇心与积极性。
  (二)师生互动 学习新知
  教师启发学生思考做出这个游戏,需要经历哪些步骤?
  1.需求分析:确定要解决的问题,简单说,即要计算机“做什么”。
  说明:这一步学生很难回答出来,教师可以通过类比第二章进行信息获取时首先需要做“定位信息需求”来引导学生思考。
  明确要解决的问题后,师:只要我们把问题原封不动地交给计算机,它就能自动得出结果吗?
  从而引出结论:计算机并不能代替人做所有的事情,它只能按照人们事先给定的步骤工作。因此,当我们明确要解决的问题后,先要一步一步设计好怎么做,也就是设计解决问题的算法,然后通过编写程序,将人们解决问题的过程用计算机语言表述为指令,从而赋予计算机解决问题的能力。
  设计意图:启发学生归纳并引出后几个步骤,避免生硬说教,使知识的讲解过渡自然、衔接紧密。
  2.算法设计:针对某一特定问题设计的一组(有限个)求解步骤或方法。
  教师讲解算法的概念,并强调它不仅是指计算的方法,而且还包含从何处着手、解题步骤以及结果处理等全过程。
  再通过一个极为生活化的事例加以说明和诠释:邮寄一封信可分为写信、写信封、贴邮票、投信等步骤,每步分别通过不同的方法实现。
  最后启发学生思考,应该怎样设计算法以实现本游戏,并口头描述出来。
  设计意图:让学生理解怎样用算法描述实际问题,理解人的思维在计算机中发挥的作用,初步突破教学难点。
  3.选择开发环境:教师通过类比“要表达某种意思,可以通过不同的语言来实现”,让学生明白:可以选用不同的编程语言(环境),来把人们设计的算法转换成计算机能够识别的代码。由于VB操作简单、上手容易,故选用VB来实现。
  设计意图:避免学生建立“编程=VB”的片面观念。并理解计算机语言只是工具,算法才是程序设计的灵魂。
  4.编程实现:把人们设计的算法转换成计算机能够识别的代码,并调试实现。对VB来说,主要包含界面设计、代码编写和调试运行。
  教师让学生思考:该游戏的界面需要设计哪些部分?接着打开课前准备好的游戏半成品,先简要介绍VB的工作界面,对VB独特之处进行有选择的说明:如界面设计窗口、代码窗口、运行、结束按钮等,方便学生能快速进行操作。再演示制作游戏界面的“我”先取按钮,并添加对应的代码(直接复制准备好的代码)。布置必做任务:制作“计算机”先取按钮(不添加代码)。
  设计意图:教师操作演示,一方面为学生组装体验做出示范;另一方面为让学生明白计算机只是按程序所规定的内容和步骤来解决实际问题,本身并没有思维。计算机程序是一组操作指令或语句序列。这其实就是编程加工信息的内在机制,学生理解了这点,再通过后面的亲身体验感悟,进一步加深理解,突破教学的难点。
  (三)亲身实践 体验成功
  学生根据教师刚制作的游戏半成品、提供的游戏源代码和制作过程视频,组装“计算机”先取按钮对应的代码,调试运行整个游戏(可做修改),体会里面的算法策略,尝试借助于注释,了解每段代码所完成的工作或含义;生成.exe文件,并提交。
  设计意图:通过让学生组装,体验编程加工的主要过程,突出重点,并加深对编程加工内在机制的理解。必做任务要求每人提交一份作业,防止个别学生滥竽充数。
  (四)拓展探究 提高创新
  学生的层次不一,对于还未完成必做任务的学生,教师及小组给予指导帮助;对于学有余力的小组和学生,教师应创设挑战情境,并鼓励他们完成拓展任务。
  拓展任务1:能不能在现有的程序上做些修改,让你的小程序更完善、更有新意?比如在界面上添加一个“退出”按钮,在游戏运行过程中,点击它就可以直接退出(提示:退出的核心代码只有一条,即:end)。
  拓展任务2:如果游戏规则变成:每次计算机或人最多都可以取3根火柴,其他条件都不变,在现有游戏的基础上应该做哪些修改?
  (五)交流评价 归纳总结
  对于每个任务,分别鼓励1~2个完成较好的小组展示其作品,教师适时点评。
  师生互动,回顾编程加工的主要过程,进一步明确本节课的重点。对学生的实践探究和小组合作做出整体点评,并结合教学目标和各班学生具体情况给出针对性建议。
  评价标准:用五星进行量化评价。星数越多,期末总评时加分越多(评价表略)。
  附录:取火柴游戏源程序:
  Private Sub 开始_Click()
  N = Int(Rnd * 48 3)’产生3到50的随机火柴数
  Text1.Text = Str$(N) ’在文本框1中显示产生的随机火柴数
  End Sub
  Private Sub 计算机_Click()
  If N Mod 3 = 0 Then
   answer = MsgBox("哇塞,你有可能赢哦")
  Else
   answer = MsgBox("哈哈,计算机赢定啦")
  End If
  End Sub
  Private Sub 我_Click()
  If N Mod 3 = 0 Then
   answer = MsgBox("哈哈,计算机赢定啦")
  Else
   answer = MsgBox("哇塞,你有可能赢哦")
  End If
  End Sub
  (作者单位:海南海口市第一中学)
  
  点评
  
  传统的教学步骤是:提出概念→解释概念→举例说明→应用练习,而本课的教学设计则是:提出问题→介绍解决问题的方法→归纳出一般规律和结论→实践探究→实时评价,充分体现了新课改的理念,也很适合本节课教学要求。由于本节内容只是概述性的,若在一课时内阐明信息编程加工的内在机制是有难度的。在学生没有太多相关知识储备的情况下,教师通过游戏导入激发学生兴趣,用“寄信”这个贴近学生生活实际的简单类比,恰当地诠释了算法设计的过程和步骤。另外,在教学资源的准备、分层教学和评价环节设计上都有充分的考虑,整堂课设计合理简练,值得大家学习和借鉴。
  (点评人:新疆维吾尔自治区教研室刘进录)
  
  正如本课执教者所言,短短一节课的学习,意不在编程,而在了解信息编程加工的方法,了解计算机解决问题的一般方法,知道算法概念并通过学习与动手尝试而对这种方法产生兴趣。通观整节课的流程,可以说是很流畅且高效地达成了这样的目标。配合着教学每个环节的“设计意图”也是本课例值得称道的。此外,这节课还跳出了游戏只用于单纯导入的模式,针对实现游戏的VB小程序次第展开了后续教学。在教学形式上有讲授、讨论、演示、操作(小组活动)、任务驱动(分层任务)等,在教学内容上既突出了重点,突破了难点,又将它们合理化解在整个教学与实践活动之中。
  (点评人:天津第二南开中学徐劲梅)
  
  使用计算机解决实际问题的方法是多种多样的,除了使用小学和初中均学过的文字处理、图表处理或加工软件进行信息处理外,明确直接用计算机程序来解决实际问题的方法也是非常重要的。然而,若只在一个课时里,就教会学生去编程,不仅是做不到的,也不是课标所要求的。分析课例及与执教者研讨和沟通后,我认为,王老师对课标的把握是正确的。本课的突出表现:(1)教学内容和教学对象分析得准确、透彻;(2)教学内容设计贴近学生、难易适中。(3)教学过程自然流畅,教学活动的外在节奏与内在逻辑清晰。
  作为课例研究,需再思考的问题:(1)在教学内容的设计上,抛开了教科书,如何再回归教科书呢?(2)作为成功的课例发布,在文本表述的形式上,怎样才能做好精炼和准确相统一?(3)信息技术课时偏少,能否调动学生的积极性,将某些学习活动“扩展”到课外呢?
  (点评人:江苏连云港师范高等专科学校冯伯虎)
  
  作者反馈
  本课中,算法无疑是一个重点问题,但绝不能让学生深陷在某个较复杂的算法理解当中,而忽略了整个环节和纵览全局。故教师需要清晰地把握好:(1)算法和编程应讲到什么程度;(2)运用什么方法使学生理解信息的编程加工。我强调学生在亲历和参与中获取对程序设计的体验和感悟,并关注他们的个性化、多元性表现。整个教学活动紧紧围绕教学的重点(编程加工的主要过程)而展开,并逐步突破教学难点,同时注重细节的处理和斟酌。从教学实施的效果来看,是比较成功的。
  几位专家的意见和建议非常中肯。尤其是冯老师提出的“需要思考的问题”,值得在今后课例的深入研究中进一步尝试和改进。
  
  案例连接:http://www.ictedu.cn/bbs/showthread.asp?threadid=4510
  
  (栏目主持人:冯伯虎)
其他文献
目的探讨微创治疗高血压脑出血的方法、适应症及疗效.方法回顾分析78例高血压脑出血微创清除术病例的治疗及效果.结果术后2 d血肿基本清除8例,3 d46例,7 d 24例.预后按GOS分类:良好28例,中残34例,重残9例,睁眼昏迷1例,死亡6例.结论微创清除术治疗高血压脑出血疗效优于传统手术,具有操作简单,创伤打击小等优点,适合基层医院开展.