计算思维作为核心素养之一,最能体现信息技术的学科价值,因此得到越来越多的教育研究者关注。
计算思维的实质是一个问题解决过程,这个过程包含两方面的特性:“结构分解、实体抽象、模型建设、自动化实施”等技术应用特征;“明确问题、设计方案、实施反馈、修订完善”等一般性解决问题方法。在教学设计中可以从学生感兴趣的基于真实情景的问题出发,由学生从基于自然语言的问题情境抽象出计算机能够识别的模型,将问题模型转化为计算机能偶识别的计算模型,最后通过计算机程序自动化执行来帮助我们解决问题。基于此思路,笔者在初中信息技术校本课程《Scratch趣味编程》中进行了初步探索,以期为信息技术教学带来新的思考方向和参考价值。
基于计算思维导向的教学设计案例

2013年,南安普顿大学的Cynthia Selby博士和John Woollard 博士提出计算思维包括算法思维、评估、分解、抽象、概括五个方面的要素。以此为参考,笔者设计了一节以计算思维为导向的教学案例-计算机模拟抛硬币实验。
本节课的教学流程大致为以下几个阶段。
(1)定义问题:引出问题,多次抛一枚硬币,其正面朝上和反面朝上出现的次数是否一样,思考如何实验验证猜想。
学生活动一:抽象-将问题的本质抽取出来,抛弃复杂的问题。在问题定义环节学生将要验证的抛硬币实验概率问题转化为数学统计问题。
(2)建立计算模型:根据抛硬币实验设计,分析Scratch模拟抛硬币实验所需要的角色和变量,将数学统计问题进一步转化成计算机能够执行和运算的问题。
学生活动二:参照界面设计分析表类比抛硬币实验设计,思考程序的界面设计。
表1 计算机模拟抛硬币实验界面设计分析表
计算思维:1)类比--由熟悉的抛硬币实验类比分析,总结出程序要实现的功能模型。2)抽象--采用计算机可以处理的方式界定问题,将“正面向上”“反面向上”两个结果的记录抽象成程序中的变量,将实际中的硬币抽象成程序中的角色。
(3)算法设计:将计算模型进一步用程序语言表达出来。
学生活动三:类比现实生活中抛硬币实验,画出计算机模拟硬币实验的程序流程图。
计算思维:抽象--将硬币的正反面两个随机结果抽象成计算机随机生成两个参数的过程,将每次抛硬币的实验结果及数据记录成抽象成程序中的选择结构,将重复多次实验冲向成程序中的循环结构。
图1 抛硬币实验程序流程图
(4)算法的实现
学生活动四:根据流程程序图,将任务适当分解为子任务。
计算思维:1)分解--分解是对整体任务进行合理的功能模块划分,将总任务分解成可以单独解决、独立开发的子任务,减少一次要处理的任务负荷,使复杂的问题得以较容易地解决。在算法实现的过程中采用分解思维,将总任务分解为三个子任务:a.生成随机数;b.根据随机数的结果,让硬币切换造型,并记录正面朝上和反面朝上的次数;c .实现多次重复实验。2)算法思维--算法是指解决问题的步骤,它是一系列清晰且明确的指令的组合。对于某种特定的问题,如果由规范的输入,计算机就能遵循这组指令或规则,在有限的时间内可以获得所要求的输出。根据流程图,学生将程序语言转化成计算机指令,合理选用顺序结构,分支结构、循环结构实现算法。3)评估--确保当前的解决方案是最优的。通常一个算法不能完美地满足各种条件,要综合各项指标进行判断和取舍,从中选取最优方案。在设计算法的过程中反思问题解决方案,不断改善和优化程序。
(5)算法自动化实施:将重复执行的次数改为100、500、1000、1500,记录正面和反面各自出现的次数。
学生活动五:运动程序,搜集数据,填写表格。
表2计算机模拟抛硬币实验数据
计算思维:自动化--自动化是充分利用计算机可自动重复的强大的运算能力来求解问题,以弥补人在处理的撒数据时的计算缺陷。学生通过算法实现程序,并由程序的自动化执行来搜索数据。
(6)迁移推广
学生活动六:分析数据,计算正面朝上出现的频率(正面朝上的次数/实验重复次数),并得到实验的结论。
计算思维:概括--基于先前已经解决的问题,将其概括作为通用解决方案,以便于推广到更广泛的问题情境中。学生用计算机程序模拟搜索数据过程并概括出实验结论:做出大量重复实验时,随着实验次数的增加,一个事件的出现频率,总在一个固定数的附近摆动现实一定的稳定性,这个固定数就是概率。
本教学活动设计紧紧围绕计算思维的操作性定义和五个基本组成要素展开,“从一枚硬币说起”,引导学生思考如何利用计算机模拟大量重复性实验,通过六个教学活动,经历了不同程度的问题抽象,将学生思维过程可视化。
建构真实的问题情境是抽象思维的第一步
计算思维的实质是抽象和自动化,现实生活中我们面对的往往错综复杂的非良构问题,要求我们能将此类问题抽象出计算机能够处理的问题,所以在教学中我们要基于真实的问题,引导学生清晰地定义和表达问题。
与数学学科整合,加深对数学概念的理解
抛硬币实验是一个典型的随机事件,数学中的概率建立在大量的重复性实验的基础上的,现实生活中,由于无法直观展示大量重复实验的结果,学生在理解概率这个数学概念时,智能借助抽象的理论推理,造成理解上的困难。计算机的机械运算能力使得计算机在处理这类大量重复的事情上有着极大的优势,因此采用编程模拟随机事件,可以使学生直观地明白概率的含义,这也是科学整合的魅力。学科之间互相借力,创造性的解决问题。
计算模拟,科学探究三大范示
随着互联网的普及,信息技术手段的不断提高,使得科学研究除了传统的实验研究和理论研究外,多了一个新的研究范示:计算模拟。利用计算机能够方便采集与处理信息的能力,帮助我们学会信息时代的科学探究,提高信息处理能力。
思维可视化,提升计算思维的能力
计算机解决问题的过程和人类解决问题的过程最大的区别在于,人类有大量的包含个人禁言在内的隐形知识,而计算机解决问题的u欧城要求清晰的问题定义和描述,通过对问题的层层抽象,将学生的隐形知识显性化,思维过程可视画,不断对计算机思维能力进行强化和训练,思维能力才能得到提升。
以计算思维为导向的教学促使中小学信息技术教学价值发生了改变,计算思维教学的目标不仅仅是让学生打下学科特有知识基础,更重要的是培养其学科特有的思维模式,培养学生面向未来发展的能力。计算思维作为信息技术学科的核心素养之一,如何在教学中有效地进行培养还需要广大教育者们进一步地思考和研究。
来源:作者:王慧敏 王戈 胡秋萍 陶双双 人民大学附属中学朝阳分校 北京市朝阳区教学研究中心 北京市教育学院朝阳分校 首都师范大学附属实验学校
传喻使命:致力于科技教育人才的培养与储备