曹春雷
北京市通州区宋庄镇中心小学
摘要:2018年1月,最新版《普通高中信息技术课程标准》提出高中信息技术学科核心素养由信息意识、计算思维、数字化学习与创新、信息社会责任4个核心要素组成。在小学阶段的编程教学主要是让学生了解所学语言编程的基本思路,理解程序设计的基本结构,掌握编程的方法和步骤。教师可以根据计算思维“四化”的表现形式去开展教学活动培养学生计算思维。
主题词: 小学生 计算思维 四化
一、理论思想
2018年1月,最新版《普通高中信息技术课程标准》围绕“人与技术”“人、技术、问题解决”“人、技术、社会”的关系而展开,提出高中信息技术学科核心素养由信息意识、计算思维、数字化学习与创新、信息社会责任4个核心要素组成。4个核心要素既相互区别,又相互联系,统一于学科核心素养发展过程始终,共同构成学科核心素养体系系统。四个核心素养之一的计算思维是学生个体文化素养方面的基本表现,是学科核心素养系统的核心及关键要素,影响其他3个要素发展的质和量,一定程度上决定学科核心素养的优劣。计算思维具体是指个体运用计算机科学领域的思想方法,在形成问题解决方案的过程中的一系列思维活动。具备计算思维的学生,在信息活动中能够采用计算机可以处理的方式界定问题、抽象特征、建立结构模型、合理组织数据;通过判断、分析与综合各种信息资源,运用合理的算法形成解决问题的方案;总结利用计算机解决问题的过程与方法,并迁移到与之相关的其他问题解决中。求解信息系统问题所需要的计算思维素养主要表现在四个方面:形式化、模型化、自动化、系统化。
东北师范大学信息与软件工程学院解月光教授在论文“高中学生信息技术学科核心素养的描述与分级”中对“四化”进行了这样描述:形式化是指以抽象思维的方式,将客观世界的现象或问题抽象为计算机可以处理的模型,即从特殊、具体、繁复的信息系统问题中,抽象出其隐含着的一般的、本质的内容、要素及其之间的逻辑结构,从而为分析问题提供形象的认知材料,以发现问题内在的运动规律并予以把握。模型化是指根据信息处理者解决问题的实际需要,选择特殊的分析角度和认知视角,对信息系统问题的某些特征与内在联系进行抽象化、形式化处理,在此基础上,选择已知的问题解决模型或者建立新的结构模型,根据模型组织并分析数据、信息,以求发现解决问题的方法、方式及途径。自动化是指在把握信息系统运行规律的基础上,通过操作数字化工具,使相应的信息设备、信息系统或信息运算过程按照人的要求,经过自动检测、信息处理、分析判断、操纵控制等过程,实现预期目标,并通过迭代的方法对其(处理流程)进行不断完善和逐步优化。系统化是指遵循一定的系统规律或方法,采用一定的信息处理方式,对零散的信息材料、数据、算法、流程或者信息系统进行系统有序的归类、整理、编排或加工,使其内部各部分相互联系、相互作用,进而形成具有解决特定信息系统问题功能的有机整体,并能够将这种思想、方法迁移到相关问题的求解中。从信息技术课程的育人角度来看,计算思维作为信息素养的基础性部分,是学生在系统的学科学习过程中形成的,能够运用计算机科学领域的思想、策略、方法、技术等解决真实信息系统问题的过程中所形成的一种内在思维品质。
二、教学实践
根据小学高年级学生的兴趣、认知能力和知识水平,笔者设计“用Scratch编程判断奇偶数”的主题任务带领学生学习编程知识。 本课尝试以编程判断奇偶数为题,采取“形式化”、“模型化”、“自动化”、“系统化”四步骤,通过编写、测试、修改、优化程序,培养严谨、求实、质疑的学习态度,在分析问题、解决问题的过程中,培养学生良好的编程习惯,逐步提高程序阅读能力和编写能力。通过分析问题,寻找解决方案,编写程序解决问题,灵活地掌握编程知识,逐步理解并掌握程序设计思想和方法,培养计算思维。具体实施步骤如下:
第一步:形式化
首先教师提出问题:设计一个判断奇偶数的程序脚本,当输入一个正整数后程序自动判断它是偶数还是奇数。
然后带领学生共同分析问题,使用自然语言叙述判断奇偶数的算法:
第1步,输入一个正整数N。
第2步,判断N能否被2整除,即判断条件“N除以2的余数等于0”,则输出N是偶数。
第3步,如果N不能被2整除,进行第二次判断,即判断条件“N除以2的余数=1”,则输出N是奇数。
这一环节是针对小学生的实际学情,简化了对高中信息技术课程标准中形式化的要求,学生通过自然语言叙述判断奇偶数的算法,将数学问题转化为编程问题,将判断奇偶数问题抽象为计算机可以处理的简单思维模型。
第二步:模型化
引导学生利用流程图来描述判断奇偶数的算法,这一环节学生是在使用自然语言叙述算法之后,利用“流程图”图形化的方式描述判断奇偶数的程序结构,直观和形象地描述算法的执行步骤,展现算法的逻辑结构,梳理程序设计的思路。帮助学生理解算法的“模型化”处理过程,为编制判断程序结构的程序打好思想基础。
第三步:自动化
这一环节是根据前面的问题分析和描述,使用两个“如果…那么”命令积木创建一个判断结构的程序脚本,编程要点如下:
第1步,新建变量“N”,代表正整数。
第2步,使用“询问……并等待”、“回答”和“将……设定为”为正整数N赋值。
第3步,判断能否被2整除,即判断条件“N除以2的余数等于0”,则“说”“它是一个偶数”。
第4步,如果N不能被2整除,进行第二次判断,即判断条件“N除以2的余数=1”,则“说”“它一个是奇数”。
编程平台“Scratch”提供了“如果…那么”命令积木和“如果…那么…否则”命令积木来实现判断结构。在解决实际问题中,将判断结构用于需要进行逻辑判断的算法中,并结合关系运算和逻辑运算操作,可以描述各种复杂的逻辑规则,从而使程序能够处理各种复杂的问题。本环节是根据解决问题的算法设计流程图,在梳理编程思路之后选用恰当命令模块,准确设计判断条件,最后搭建和调试判断结构的自动化程序。
第四步:系统化
在拓展练习环节提出新问题:根据平均分判断等级。具体题目是六年级(1)班学生11月检测,考查语文和数学两门课程,根据这两门课程考试得分的平均分评定为不及格、及格良好、优秀四个等级。
学生首先要用自然语言叙述算法,对给出的根据平均分判断等级的信息进行分析、整理、编排和加工,“形式化”编程思路。然后根据信息的内部联系绘制流程图,“模型化”程序结构。之后根据“判断奇偶数” 的“自动化”程序模型,利用流程图设计程序。最后将之前的编程方法迁移到根据平均分判断等级的问题上,“系统化”解决新问题,编写新程序。
总的来说,小学阶段的编程教学主要是让学生了解所学语言编程的基本思路,理解程序设计的基本结构,掌握编程的方法和步骤,通过编程解决实际问题,激发编程的兴趣,培养发展计算思维。通过本次教学尝试可以归纳出每一节编程课上都可以根据计算思维“四化” 的表现形式去开展教学活动:
第一步,形式化,将给出问题用自然语言转化为编程问题。
第二步,模型化,根据给出问题的解决需要,利用流程图建立程序模型。
第三步,自动化,选用恰当命令模块,编制、调试、完善自动化运行的程序。
第四步,系统化,根据信息的联系,形成完整系统,再将这一系统迁移到类似其他问题的解决中。
参考文献:
[1]中华人民共和国教育部,普通高中信息技术课程标准(2017年版)[S].北京:人民教育出版社,2018.
[2] 谢月光,杨鑫,付海东.高中学生信息技术学科核心素养的描述与分级[J].中国电化教育,2017,(5):8-13.
[3] 李艺,钟柏昌.信息技术课程核心素养体系设计问题讨论[J].电化教育研究,2016,(4):5-10.