基于计算思维培养的Scratch教学三步曲 教育文档
- 格式:doc
- 大小:15.79 KB
- 文档页数:6
以计算思维为导向的《Scratch趣味编程》教学设计作者:王慧敏王戈胡秋萍陶双双来源:《中小学信息技术教育》2018年第01期计算思维作为核心素养之一,最能体现信息技术的学科价值,因此得到越来越多的教育研究者的关注。
计算思维的实质是一个问题解决的过程,这个过程包含两方面的特性:“结构分解、实体抽象、模型建设、自动化实施”等技术应用特征;“明确问题、设计方案、实施反馈、修订完善”等一般性解决问题方法。
在教学设计中可以从学生感兴趣的基于真实情境的问题出发,由学生从基于自然语言的问题情境抽象出计算机能够解决的问题模型,将问题模型转化为计算机能够识别的计算模型,最后通过计算机程序自动化执行来帮助我们解决问题。
基于此思路,笔者在初中信息技术校本课程《Scratch趣味编程》中进行了初步探索,以期为信息技术教学带来新的思考方向和参考价值。
基于计算思维导向的教学设计案例2013年,南安普敦大学的Cynthia Selby博士和John Woollard博士提出计算思维包括算法思维、评估、分解、抽象、概括五个方面的要素。
以此为参考,笔者设计了一节以计算思维为导向的教学案例——计算机模拟抛硬币实验。
本节课的教学流程大致分为以下几个阶段。
(1)定义问题:引出问题,多次抛一枚硬币,其正面朝上和反面朝上出现的次数是否一样,思考如何设计实验验证猜想。
学生活动一:大家一起抛硬币。
写出各小组“抛硬币”搜集到的数据。
计算思维:抽象——将问题的本质抽取出来,摒弃复杂的细节问题。
在问题定义环节学生将要验证的抛硬币实验概率问题转化为数学统计问题。
(2)建立计算模型:根据抛硬币实验设计,分析Scratch模拟抛硬币实验所需要的角色和变量,将数学统计问题进一步转化成计算机能够执行和运算的问题。
学生活动二:参照界面设计分析表类比抛硬币实验设计,思考程序的界面设计。
计算思维:①类比——由熟悉的抛硬币实验类比分析,总结出程序要实现的功能模型。
基于计算思维培养的小学Scratch教学设计与实践探究基于计算思维培养的小学Scratch教学设计与实践探究引言:计算思维已经成为当今社会中一种十分重要的思维方式。
在教育领域,培养学生的计算思维能力已经引起了广泛的关注。
Scratch是一种编程语言,通过其图形化编程环境,可以帮助学生更轻松地学习计算思维。
本文将探讨如何基于计算思维培养的理念,设计和实施小学Scratch教学,以促进学生创造性思维,问题解决能力及逻辑思维的培养。
一、计算思维在小学教育中的重要性计算思维是指通过有目的地运用计算机科学和计算机思维的概念、方法、原则和技术,从而解决问题和处理信息的思维方式。
计算思维涵盖了问题分析、抽象建模、算法设计、编程实现等内容。
培养小学生的计算思维能力,可以提高他们的创造力、解决问题的能力以及逻辑思维能力,对于他们未来的学习和发展具有积极的影响。
二、小学Scratch教学的设计原则1. 创造性学习:通过鼓励学生自主探索和创造,激发他们的创造力和创新精神。
2. 项目驱动:通过设计有趣的项目,让学生从实际问题中学习计算思维的相关概念和技术。
3. 合作学习:通过小组合作学习的方式,培养学生的团队合作意识和能力。
4. 循序渐进:根据学生的学习程度和能力,设计合适的任务难度,循序渐进地提高学生的计算思维能力。
三、课程设计与实践探究1. 课程概述本课程旨在通过Scratch编程平台,培养小学生的计算思维能力。
课程内容包括了Scratch环境的介绍、基本编程概念的学习以及实际项目的设计和实现。
2. 第一节课:Scratch环境介绍在本节课中,学生将了解Scratch编程环境的基本功能和操作方法。
通过指导学生创建自己的角色和舞台,学生可以初步了解到Scratch的图形化编程界面。
3. 第二节课:基本编程概念的学习在本节课中,学生将学习Scratch中的基本编程概念,例如事件、循环、条件等。
通过讲解和动手实践,学生将能够理解这些概念,并能够在自己的项目中应用。
基于计算思维的Scratch程序程序设计课程教学实践作者:葛伟亮来源:《电脑知识与技术》2020年第08期摘要:就小学信息技术Scratch程序设计课程教学过程而言,教师需注重培养学生良好计算思维,计算思维能够在很大程度上体现信息技术独特性,是信息技术科学的本质。
因此,该文概述了计算思维重要意义,详细分析了基于计算机思维的Scratch程序设计课程教学过程与方法,其中包含课程教学模式与课程实例设计。
关键词:计算思维;Scratch程序设计课程;教学中图分类号:G642 文献标识码:A文章编号:1009-3044(2020)08-0104-02目前基于Scratch的可视化图块式编程工具,以其自身独特优势备受信息技术教师与学生欢迎,即Scratch程序易于入门,且可制作复杂项目,因此逐步渗入了中小学信息技术课程。
而计算思维是信息技术教育领域的热门话题,为更好表征与评估学生学习程序设计的具体活动与学习效果,大多数学校积极引进了计算思维三维架构。
就循序渐进角度,Scratch程序设计课程学习可划分为三层次,即故事创编、个性化游戏、项目设计,突破零散概念教学,基于项目活动学习,更加易于全面掌握,在教学中,引导学生自主探寻,以培养良好计算思维,从而实现学生创新能力提升[1]。
1 计算思维重要意义分析计算思维即通过计算机科学领域的思想,在信息活动中以计算机处理方式界定问题、抽象特征、构建模型、合理组织数据。
面向信息资源评估分析与整合,利用科学算法构成问题解决方案。
首先科学合理思考解决复杂问题,有效解决方案的关键是学生思考事物的主要方式,就复杂问题解决而言,需具备明确清晰的思路与有效可行的方式方法。
计算思维的关键在于可简化抽象繁杂问题为简单问题,且基于计算机处理模式构建相似问题解决方案,以助于学生快速准确解决难题。
其次强化学生创新创造能力,在培养学生计算思维时,计算思维一般都与Scratch、LEGO等可视化编程工具有机结合,此间学生通过活动创造优秀作品,构成可行的解决方案,属于学生自主创新创造过程[2]。
基于计算思维培养的Scraino 创意编程学习模式初探——以《队列练习:认识广播命令》教学为例作者:段勇计算思维(Computational Thinking)最早由Logo语言创始人西蒙.帕佩特(SeymourPapert)教授提出。
计算思维(Computational Thinking)•卡内基梅隆大学的周以真教授对其进行了系统的阐述和推广。
•“计算思维涉及运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为。
计算思维涵盖了反映计算机科学之广泛性的一系列思维活动。
”•周教授希望人们通过习得计算思维,从而能够“像计算机科学家一样思考。
”•计算思维已与传统的3R技能(Reading阅读、Writiing写、Arithmetic算术)逐步成为学生的必备基本技能。
如何在课堂教学中利用Scratch培养学生的计算思维?•“明确问题——自由搭建——调试修改——展示互评——拓展提升——分享交流”六步探索学习模式。
明确问题自由搭建调试修改展示互评拓展提升分享交流《队列练习:广播命令》的教学设计(一)教学内容分析与教学目标•本课是青岛版第五册第二单元走进Scratch编程第13课。
内容是模拟学生体育课队列练习的程序:当单击任一小动物名称,该动物出列。
单击“归队”则回到队伍。
单击“起跳”三只小动物一起起跳。
教学目标•知识与能力:理解“广播”概念的内涵,能够用“广播”积木搭建表达自己想法与创意的简单程序。
能使用数学模型表示现实生活事件。
•过程与方法:通过计算思维实践探索“广播”积木的使用。
通过教师帮助深入理解“广播”积木的内涵。
通过类比的方法理解坐标增减知识。
•情感、态度与价值观:养成清晰表达自己思想、大胆尝试、善于学习借鉴、乐于交流分享的创客思维品质;加强合作意识;通过实际的学习活动,建立计算思维意识。
重难点•一、理解并能运用“广播”命令。
•二、能通过数学建模模拟“出列”、“起跳”、“归队”等现实生活中的常见事件。
基于计算思维培养的Scratch 教学以“想象、创作、分享”为主题的Scratch,趣味性、易学性、实践性、创新性都适合中小学生,特别是作为简单易学的编程工具,用拖动指令块代替敲代码,学生可以避开程序设计语言语法的学习和调试,集中精力对问题进行求解,这为学生计算机思维的培养提供了便利条件。
笔者以《大鱼吃小鱼》一课为例,就如何培养学生的计算思维同大家一起探讨。
学生此前已经学会了Scratch 中常见的指令块,本节课是Scratch 的综合应用课。
课程任务是:在10 秒钟内记录大鱼吃掉小鱼的总条数。
• 利用面向对象的方法抽象出问题求解的模型计算思维作为一种思维过程,很难用知识描述的方式显性呈现出来。
其中方法是计算思维的重要内容。
计算思维的方法可分为数学方法和工程方法,其中数学方法涉及抽象、递归、证明、形式化表达等,工程方法包括系统方法、分治法、面向过程和面向对象方法等。
教师通过这两类方法的传授,把有关计算思维的相关思维特征和方法分解到每一个具体的教学内容之中。
大鱼吃小鱼”游戏实现起来比较复杂,因为它不是个结构化很强的问题,没有明确要求先做什么再做什么,前后逻辑性不是很严密,小鱼在游,大鱼也在游,时间还在走,当小鱼碰到大鱼,要被吃掉,其他小鱼依然不受影响,继续游,时间继续走。
程序中出现了几个并行的流程时,如何进行任务统筹呢?如何贴近实际进行程序的优化提高效益呢?利用求解的顺序步骤很难解决问题,这需要从另外一个思路思考问题求解的方法面向对象的方法。
把问题抽象出对象+触发事件”模型,分析游戏中涉及哪些对象,这些对象的初始状态是什么,哪些对象是静态的,哪些对象是动态的,动态对象的激发事件是什么,调试运行后,是否达到最初的预期,没有达到如何优化。
学生从具体的事例中抽象出计算机能够解决的模型,从而达到解决问题的目的。
教学片段1:师:游戏中有哪些对象?生:一条大鱼,许多条小鱼,背景,被吃小鱼计数器、计时器。
师:它们初始状态是什么?生:计数器初始化为零,计时器初始化为零。
基于计算思维三维框架的scratch教学设计研究基于计算思维三维框架的scratch教学设计研究引言计算思维是21世纪最重要的思维能力之一,它能够培养学生的逻辑思维、创新思维和问题解决能力。
Scratch是一种非常适合初学者的图形化编程语言,能够帮助学生理解计算机程序设计的基本概念。
本文将介绍一种基于计算思维三维框架的Scratch教学设计研究,以帮助学生更好地理解和应用计算思维。
一、计算思维三维框架的介绍计算思维三维框架是指将计算思维分为三个层次:问题分解和抽象、模式识别和数据表示、算法设计和优化。
问题分解和抽象是计算思维的起点,它需要学生将一个复杂的问题分解为较小的子问题,并抽象出关键的概念和模式。
模式识别和数据表示是计算思维的基础,它要求学生能够识别和应用各种模式,并选择合适的数据结构来表示和处理信息。
算法设计和优化是计算思维的核心,它涉及到解决问题的具体算法的设计和优化。
二、基于计算思维三维框架的Scratch教学设计1. 问题分解和抽象在教学设计中,可以提供一些具体的问题给学生,并引导他们思考如何将问题分解为较小的子问题,并抽象出关键的概念和模式。
例如,可以设计一个游戏,要求学生用Scratch编程实现。
学生需要将游戏的主要功能分解为角色移动、与其他角色的互动、计分等子问题,并抽象出关键的概念,如坐标系统、碰撞检测等。
2. 模式识别和数据表示为了培养学生的模式识别和数据表示能力,可以设计一些问题,要求学生找出问题中的模式,并选择合适的数据结构来表示和处理信息。
例如,可以设计一个花园中植物的生长模拟程序,在程序中提供不同的植物和环境参数,学生需要找出植物生长的模式,并选择合适的数据结构来表示植物和环境。
3. 算法设计和优化为了培养学生的算法设计和优化能力,可以设计一些复杂的问题,要求学生设计和实现高效的算法来解决。
例如,可以设计一个迷宫游戏,要求学生设计一个算法来寻找迷宫中的最短路径。
学生需要分析问题,设计合适的算法,并优化算法的效率。
Scratch教学模式三部曲【摘要】在小学阶段,学生对信息技术课程的学习兴趣在不断的下降,学生接触信息化设备的机会越来越多,他们的信息技术的应用能力普遍较高,尤其是生活在城市中的学生,他们对原有教材内容的学习失去兴趣,如何动调他们的学习兴趣与积极性,是广大信息技术教师所要考虑的问题。
而Scratch软件的出世,让很多正在苦恼的信息技术教师看到了曙光。
【关键词】Scratch、游戏开发、教学模式(一)教学模式三部曲的实践Scratch的教学试点在五年级,根据五年级学生的身心特点,笔者把教学分成两个阶段:基础性知识的学习和作品的自由创作。
基础部分,需要学生们掌握一些基础知识,如移动、随机数、外观的变化等等以及基本技能,如如何设置重复执行,怎样让游戏更好的结束等,为自由创作打基础;让学生在搭建游戏的过程中,激发学生对编程的兴趣。
自由创作阶段,完全是让学生自我发挥,作品的出色与否凭学生对自己游戏思想的解释程度,自由创作可以满足他们的创作欲望和对成功的追求,也能更好的促进知识与技能的迁移,最终还能培养学生的创新能力。
1、精选范例,形成初知Scracth提供了比较多的范例,可供游戏与参考,不过也不是所有的范例都适合刚学起来的初学者,于是进行了有机的筛选以及类似范例的修改等,如《欢快的小猫》实现前后蹦跳移动的效果,还能发出喵的叫声、《小猫散步》除了实现会前后移动效果之外,还能实现造型的切换、《翻跟抖的小猫》主要实现角色的旋转、《小猫的百变大咖秀》要实现前面两节的移动、造型切换后还要实现外观效果的改变等一些基础性的知识的学习,《小猫疯了》主要实现的是运用随机数的方法让小猫在舞台里移动,有些知识你可能在范例中没有涉及到,但是相通的,学生通过自己后期的摸索会发现其他的一些命令模块也是可以有效的为自己的作品服务的。
通过基础知识的学习,学生们能自编自导创作故事,别有一翻韵味。
但是我们的期望应该不单单是学生会制作简单的作品,更希望的是让他们了解编程的思想,培养他们的逻辑思维能力。
Scratch创作教学三部曲探究Scratch是一款趣味编程软件,具有较强的综合性,对培养学生的创新实践能力具有较大的作用。
然而利用Scratch程序模块进行创意创作,却不是一件容易的事情。
Scratch创作教学三部曲是在教学实践中通过长期摸索,经提炼总结形成的一种有效的教学方法。
一、第一部曲,从生活情境中发现问题(1)体悟生活,守护好奇心。
善于创作的人,一定是热爱生活的人。
想要培养学生的创新思维,就要引领学生做生活的有心人,仔细观察生活、充分体验生活、感悟生活中的人情事理。
教师要大胆打破常规教学模式,尝试让学生经历从模仿到改编,从改编到自创的过程。
有了探索的精神,有了兴趣,学生对于Scratch就会更加喜爱。
当年,牛顿就是因为对苹果为什么会落地的好奇而发明了万有引力定律。
例如,在教学实践中,有一位学生对电影《摔跤吧!爸爸》中用抛硬币决定摔跤比赛进攻优先权表示好奇,引发了对生活中可能性问题的思考,进而形成了利用Scratch进行编程,设计各种可能性大小实验器的创意。
(2)实践探究,激发求知欲。
有了好奇心,就会萌生创作的灵感,而与真正的创作之间还有一段距离。
创作是一个比较完整的体系,有根有枝有叶,想要寻根究底,丰富枝叶就需要经过大量查阅相关资料,并进行实践探究。
这样往往会收获更多,激发出更多创意想法。
例如,在探究生活中可能性大小问题上,教师要求学生先查阅资料,了解更多生活中的可能性问题,然后择其一二在课堂上与同学交流分享。
通过查阅,除原先的抛硬?趴赡苄源笮〉氖道?外,还挖掘出了掷骰子、抽奖转盘、黑袋摸球等可能性实例。
当学生有了这些想法之后,就会更加迫切地想要通过实验去探究各种情况的可能性大小。
学生在强烈的求知欲下,实践进行得愈发热烈,既丰富了生活经验又产生了新的问题。
于是,利用Scratch进行编程设计各种可能性大小实验器的创作想法应运而生。
二、第二部曲,借助思维导图分析问题(1)发散思维、丰富创意。
在社会信息化的大背景下,提升学生的核心素养成为信息化教学的研究方向。
计算思维作为学科的核心素养得到教育学者的广泛关注。
信息科技课程以提高学生的信息素养及解决问题的综合能力为目标[1]。
现阶段传统的信息技术教学模式致使学生的积极性不高,缺乏学习的兴趣。
面向K-12阶段学生开发的Scratch 可视化编程软件可以帮助学生在图形化的环境下快速掌握程序,提升计算思维。
一、计算思维(一)计算思维概念2006年美国卡内基大学教授周以真在Computational Thinking 中提出计算思维的相关概念,认为计算思维是“一种运用计算机科学基本概念求解问题、设计系统和理解人类行为的方式”。
2011年ISTE 与CSTA 联合公布了计算思维的操作性定义。
2017普通高中信息技术课程标准指出“计算思维是指运用计算机科学领域的思想办法,在信息活动中能够采用计算机可以处理的方式界定问题、抽象特征、建立结构模型、合理组织数据;通过判断分析与综合各种信息资源,运用合理的算法形成问题解决的方案;总结利用计算机解决问题人的过程与方法,并迁移到与之相关的其他问题解决中”[2]。
从计算思维的提出到计算思维写入课程标准中,计算思维的概念内涵与实际操作更加具体,本研究基于新课标对于计算思维的定义展开。
(二)计算思维的重要性1.促进对复杂问题的思考与解决。
高效的问题解决方案在于学生思考事物的方式,对于复杂问题的解决需要清晰的思路与合理的方法。
计算思维的核心之一是可以将抽象复杂繁乱的问题简化为可解决的简单问题,并通过计算机的处理方式形成对类似问题的整体解决方案,帮助学生解决学科与生活中的困难。
2.提升学生创新能力。
在学生计算思维的培养过程中,计算思维往往与Scratch 、APP Inventor 、LEGO 等可视化编程工具相结合,在此过程中,学生通过一系列的活动创作出作品,形成属于自己的解决方案,是学习者自主创新的过程。
二、基于计算思维培养的Scratch 课程教学设计(一)基于计算思维培养的Scratch 课程教学模式设计在中小学信息技术课程中有关计算思维的培养越发的重要。
Scratch教学对小学生计算思维养成探讨Scratch是一种简单易用的跨平台编程语言,适合小学生学习和运用。
Scratch教学对小学生计算思维养成具有积极作用,本文将从计算思维培养、Scratch教学介绍和小学生计算思维养成探讨三个方面阐述Scratch教学对小学生计算思维养成的积极作用。
一、计算思维培养计算思维是指使用计算机编程语言来设计,编写和测试算法的思维能力。
它包括数学思维、逻辑思维和计算机思维等多种思维形式。
计算思维的培养对于小学生来说尤为重要,因为这是未来数字时代的必备技能。
计算思维能够提高小学生的逻辑思维能力、科学思维能力、创新思维能力和解决问题的能力,对于小学生的未来学习和职业发展具有重要的促进作用。
Scratch以图形化的方式呈现编程内容,利用拖拽的方式组合模块,用户不需要专门的语言学习和代码输入,也可以完成程序设计。
二、Scratch教学介绍1.简单易用:Scratch教学不需要基本的计算机专业知识,用户可以通过拖拉操作完成程序设计。
2. 鼓励创新:Scratch教学让小学生能够进行多维度的创造,设计和调整自己喜欢的动画效果,创新能力得到增强。
3. 互动性强:Scratch教学中,学生的作品可以通过社交平台分享,展示作品的同时,交流想法,激发彼此的创意。
总的来说,Scratch教学在小学生计算思维养成方面具有很大的优势,通过Scratch教学,小学生可以逐渐培养计算思维能力,同时提高逻辑思维能力、科学思维能力、创新思维能力和解决问题的能力。
与此同时, Scratch教学还能够让 small 学生更加懂得团队合作和社会人性化的关注,做到让他们在编程中获得知识和美的双重满足,这才是Scratch教学在小学生计算思维养成中的真正作用。
小学Scratch教学中培养学生的计算思维探讨一、Scratch教学中培养计算思维的方法1. 通过编程培养逻辑思维:Scratch是一款图形化的编程语言,它能够以图形化的方式展示程序的逻辑结构,非常适合小学生学习。
在Scratch教学中,可以通过编程让学生学会分解问题、抽象问题、寻找模式、推理解决问题的能力,这些都是逻辑思维的体现。
2. 通过项目实践培养创新思维:在Scratch教学中,学生可以通过编程来完成一些小项目,比如制作小游戏、动画等,这些项目实践能够激发学生的创新思维。
在完成项目的过程中,学生需要不断地尝试、实践,培养他们的动手能力和创新精神。
3. 通过错误调试培养问题解决能力:编程中难免会出现错误,学生需要通过调试程序来解决这些错误。
在这个过程中,学生需要分析问题、找出错误原因并加以修正,这种调试程序的过程能够培养学生的问题解决能力。
4. 通过合作学习培养合作精神:在Scratch教学中,可以组织学生进行编程项目的合作学习,让学生分工合作、共同完成一个项目。
这种合作学习能够培养学生的合作精神,提高他们的团队协作能力。
二、培养计算思维对学生的意义1. 提高学习兴趣:通过Scratch教学培养计算思维,能够激发学生对计算机科学的兴趣,让他们愿意主动学习编程知识。
2. 增强动手能力:编程是一种动手能力的培养过程,通过编程学习能够增强学生的动手能力,提高他们的实践能力。
3. 提高解决问题能力:培养计算思维能够帮助学生提高解决问题的能力,让他们学会用不同的方式思考和解决问题。
4. 培养创新精神:计算思维的培养能够激发学生的创新精神,让他们在编程学习中不断寻找新的解决方案,培养创新思维。
5. 提高团队协作能力:在Scratch教学中,学生可以通过合作项目来提高团队协作能力,培养合作精神。
通过上述方法,可以在小学Scratch教学中很好地培养学生的计算思维能力,提高他们的综合素质。
三、小学Scratch教学中的挑战和对策在小学Scratch教学中,教师可能会面临以下挑战:1. 学习兴趣不高:有些学生对编程学习没有兴趣,觉得枯燥乏味。
小学生S c r a t c h编程教学与计算思维的培养小学生Scratch编程教学与计算思维的培养作者:王丽娟来源:《教育周报·教研版》2018年第30期从周以真教授提出的计算思维这个概念,我们可以看出计算思维是人的思维,是一种描述人们思考如何利用计算机来解决问题的途径,在小学信息技术课程中开展Scratch编程教学是当前理解和培养小学生计算思维的最佳途径。
小学生的抽象思维能力还存在一定的不足,很多编程程序的学习都需要学生发挥抽象思维能力,所以有的学生在信息技术课程中的学习上会感到枯燥、难以理解,从而对这门课程的学习丧失乐趣和信心。
Scratch创意编程工具以形象、直观的积木指令代替了枯燥、难记的代码指令,寓教于乐,极大的发展学生的思维。
一、Scratch编程对学生能力的发展(1)通过Scratch教学培养计算思维的学习和设计自动化。
Scratch编程采用搭积木的方式快速实现程序的编写,学生学习Scratch编程就像儿童在搭有趣的积木玩具,通过舞台区的演示,学生可以很直观地看到程序效果,这种借助Scratch进行编程学习的方式就是一种自动化的计算机科学方式。
比如,老师在讲解“遥控汽车――角色的控制与停止指令”的时候,为了让学生深入理解汽车前进、倒车和停止的状态,老师可以让学生戴上汽车的头饰,然后老师发出指令要求,汽车得到指令后及时做出相应的动作。
通过这种情境模拟的方式进行教学,能够激发学生的学习乐趣,提高学生编程的有效性。
(2)通过Scratch教学培养计算思维的任务分析和设计。
Scratch中的每一项任务,都需要学生先进行分析,再思考问题解决的方式方法,最终设计出符合需求的指令算法。
老师引导学生进行游戏设计的时候,学生可以根据重复和不断增加的准则,逐渐深入,不断尝试使用交互和多场景交换的模式,从而熟练掌握算法结构等相关内容。
(3)通过Scratch教学培养计算思维的程序优化处理。
在利用Scratch进行程序设计过程中,我们经常会发现同一个效果可以有多种途径来完成,从中可以找出最好的或者最合理的方式,这个过程就是计算思维的优化过程。
基于计算思维培养的Scratch教学以“想象、创作、分享”为主题的Scratch,趣味性、易学性、实践性、创新性都适合中小学生,特别是作为简单易学的编程工具,用拖动指令块代替敲代码,学生可以避开程序设计语言语法的学习和调试,集中精力对问题进行求解,这为学生计算机思维的培养提供了便利条件。
笔者以《大鱼吃小鱼》一课为例,就如何培养学生的计算思维同大家一起探讨。
学生此前已经学会了Scratch中常见的指令块,本节课是Scratch的综合应用课。
课程任务是:在10秒钟内记录大鱼吃掉小鱼的总条数。
●利用面向对象的方法抽象出问题求解的模型计算思维作为一种思维过程,很难用知识描述的方式显性呈现出来。
其中方法是计算思维的重要内容。
计算思维的方法可分为数学方法和工程方法,其中数学方法涉及抽象、递归、证明、形式化表达等,工程方法包括系统方法、分治法、面向过程和面向对象方法等。
教师通过这两类方法的传授,把有关计算思维的相关思维特征和方法分解到每一个具体的教学内容之中。
“大鱼吃小鱼”游戏实现起来比较复杂,因为它不是一个结构化很强的问题,没有明确要求先做什么再做什么,前后逻辑性不是很严密,小鱼在游,大鱼也在游,时间还在走,当小鱼碰到大鱼,要被吃掉,其他小鱼依然不受影响,继续游,时间继续走。
程序中出现了几个并行的流程时,如何进行任务统筹呢?如何贴近实际进行程序的优化提高效益呢?利用求解的顺序步骤很难解决问题,这需要从另外一个思路思考问题求解的方法――面向对象的方法。
把问题抽象出“对象+触发事件”模型,分析游戏中涉及哪些对象,这些对象的初始状态是什么,哪些对象是静态的,哪些对象是动态的,动态对象的激发事件是什么,调试运行后,是否达到最初的预期,没有达到如何优化。
学生从具体的事例中抽象出计算机能够解决的模型,从而达到解决问题的目的。
教学片段1:师:游戏中有哪些对象?生:一条大鱼,许多条小鱼,背景,被吃小鱼计数器、计时器。
师:它们初始状态是什么?生:计数器初始化为零,计时器初始化为零。
基于计算思维培养的Scratch教学三步曲当前,以Scratch为代表的可视化图块式编程工具,以其低门槛、高界限、阔空间的特点,受到了广大信息技术教师和中小学生的青睐,也就是说,Scratch容易入门,并且有机会制作较为复杂的项目,逐步进入中小学信息技术课程。
如何搞好Scratch 的普及教学,是我们面临的新课题。
如果采用传统的程序设计教学观念和教学法,让学生先学会各种命令,然后,再进行编程设计,难以达到理想的教学效果。
学习程序设计并不一定学习所有功能,而是要根据项目的需要找到相应的方法来解决问题。
我们可以变“教学生用计算机”为“让学生教计算机”,在项目设计过程中,学生对真实世界中的现象提出假设,并在计算机中进行测试,教计算机按照自己的思路去做,达到学会设计的目的。
计算思维是近年来信息技术教育领域普遍关注的热点话题,为了更好地表征和评价学生学习程序设计的活动及其学习结果,我们引入计算思维三维框架,即计算概念、计算实践、计算观念。
计算概念是设计者在编程时频繁接触,并在熟练运用中不断加深理解的一组概念,在Scratch中主要有顺序、循环、并行、事件、条件、运算符、数据等;计算实践关注学生的学习过程和问题解决策略,也就是关注学生如何学,包括递增和重复、测试和调试、再利用和再创作以及抽象和模块化;计算观念是学生除概念、实践外的人格塑造,包括表达、联系和质疑,也是作为技术生产者.
自信表现。
从循序渐进的角度出发,可以将Scratch学习分为故事创编、个性游戏、项目设计三个层次进行,每个层次制作1-2个作品,打破零散概念的教学,学生从项目中学习,更容易整体掌握。
在教学过程中,注重学生的自主探索,逐步发展计算概念和计算实践的熟悉度和流畅性,从而培养学生的计算观念,最终达到培养学生创新能力的目标。
一、故事创编,走进Scratch
Scratch采用模块化的指令集,学生比较容易上手,在故事创编层次中,学生通过创建包括角色、场景来讲故事,接触了包括顺序、事件、循环、并行等计算概念。
顺序概念有助于学生将一系列任务表达为计算机执行的指令序列。
事件概念可以让学生设计多种触发动作的情境,如:“当绿旗被点击,那么……;当对象被点击,那么……;当空格(或者其他键)被按下,那么……”初步体会互动媒体的本质。
循环概念可以让学生明白重复执行相同代码序列的机制。
并行概念可以让学生设计不同对象间同时执行的多个脚本。
在故事创编过程中,教师引导学生逐步完善故事情节。
首先,从单角色入手,学生利用顺序结构,让角色和观众打个招呼,从中学会字幕、声音的制作。
接着,学生可以尝试给故事选择合适的场景,分清角色和背景的异同。
在制作脚本时,部分学生提出背景和角色的控件不完全一致,强调要遵循先选择后操作的规.
则,看清选择对象后再制作脚本。
然后,导入多个角色,体会并行概念,在这个过程中,学生最容易搞混角色与造型,教师可以用打比方的方式把这两个概念解释清楚,造型是一个对象不同的姿势,而角色相当于个人,一般情况下,一个人的形象不会发生太大的变化。
有了多个角色,学生可以逐步完善故事情节,针对每个角色设计脚本,让多个角色进行对话。
在这个过程中,要理解并行概念,多个角色都是单击绿旗开始,还是采取多种触发事件,怎么协调对话呢?学生自主思考找到解决方案。
最后,让情节更加符合自然,让角色动起来,主要学习角色运动的几种方式,了解平移、旋转,理解坐标、循环等计算概念。
由于每个创编的故事不同,用到的方式也不完全相同,这没关系,学生要学的只是方法,以及在遇到问题时采取的解决步骤,这完全可以满足要求。
在整个故事创编中,计算实践是关键,它关注了学生如何去学习。
在创作过程中,学生不断完整故事情节,必须不断测试和调试,修改再创作,最后形成模块化作品。
二、个性游戏,深入Scratch
学生对游戏有天然的亲和力,让学生模仿交互性游戏,可以最大限度地激发其兴趣和成就感。
Scratch要求每位学生亲身参与活动,重点学习条件、运算符、变量和链表等数据概念以及测试与调试的计算实践。
选择条件概念有助于学生理解程序,具备运算符概念有助于理解计算机的运算根据条件做出判断的能力。
.
机制。
数据概念让学生明白变量和链表的实际意义。
制作游戏,必须从分析游戏开始,找出游戏的共同点,确定为游戏的设计特征。
设计游戏可根据递增和重复的原则,由简入难,逐步掌握交互、多场景切换,会应用变量、链表、广播等功能。
比如:设计《迷宫游戏》时,首先可以让学生确定两个角色――猫和老鼠,在没有迷宫的情况下设计最终目标――猫能否在你的指令下抓住老鼠,进行测试,初步理解条件的计算概念。
至于学生利用鼠标控制、键盘控制还是传感器控制小猫,完全可以由学生自己设计。
接着,让学生设计迷宫,逐步增加规则――猫在走迷宫时不能穿越墙壁,这是这个游戏最基本的规则,也是教学难点,教师要引导学生思考,通过条件判断及前进语句解决这个难点。
然后,可以增加计时器规则,限定游戏时间,提高难度,在这个过程中理解数据、运算符等计算概念。
最后,还可以探究变量的功能,学习利用广播消息/接收消息,设计出入成绩、敌人、奖励等规则,实现多场景系列通关游戏。
在设计游戏时,还可以选择碰撞、接物、互动文字、卷轴等常见的游戏方式,通过学生头脑风暴概括出游戏的基本要素进行设计,最后,小组间分享,通过表达、联系、质疑,共同进步。
测试和调试实践有助于学生掌握预测、修正问题的方式,通过自主探究和小组协作学习解决问题。
再利用和再创作实践可以借鉴他们成果完善作品。
Scratch
三、项目开发,活用
项目开发是Scratch学习的最终目标,学生在教师引导下自主开发。
目标定位是学习抽象和模块化的计算实践,培养学生的计算观念,进一步激发学生的创新热情。
学生以设计者的身份投入到创意设计中,在设计、创建、实验、探究和分享中逐步发展成为计算思维者和计算创造者。
在项目开发中,学生可以自定主题,也可以从菜单中选择项目,小组合作完成软件设计。
“做中学”和“全程评价”是项目开发的突出教学策略,学生必须亲身经历规划、联系、探究、创建、反思等多种活动。
在整个过程中,需要依靠集体智慧完成设计,必须完成作品材料的交流反思,并进行修改规划。
通过“瞻前顾后”式的反思,改进自己的作品。
具体而言,学生必须认识到,作品制作不是一个直接的线性过程,而应是一个自适应的摆动过程,计划会在一步一步不断试验中修正。
在设计过程中,教师是指导者,作为参谋参与到过程中。
学生要了解项目开发的过程,完成计划书的编写和开发过程,并做好说明文档。
为了鼓励学生自主探究和动手体验,教师必须精心设计课时计划、作品范例、教学微视频等教学资源和支架,让学生体验到学习的乐趣。
创作的主动权在学生手里,教师针对学生的疑难问题进行分析指导,并引导学生进行交互测试。
学生可以借鉴他人的想法和素材代码进行再创作,这样,学生有可能创建出比自己独立完成更优秀的作品。
课程不单纯为了学代码块,在“学生教计算机”的Scratch
过程中,学生在原有知识经验基础上理解当前学习任务,将这些理解转化为指令集程序,并传送给角色,角色根据指令意义进行相应变化。
如果角色的行为与学生的预期有偏差,那么,就要借助相关工具和微世界环境的反馈信息来修改指令集,不断调试程序直到教会角色完成任务为止。
教师可以采取作品档案袋分析法、基于作品的访谈法、情境设计法三种计算思维评价方法来表征学生计算思维的具体表现。
在整个学习过程中,教师将计算概念与实践的具体要求渗透于多种形式的探究体验活动中,学生在设计、创建、实验、探究和分享中逐步理解和掌握计算概念,内化为计算实践策略,形成计算观念。