论文部分内容阅读
【摘 要】Kodu是一款面向对象的可视化编程软件,也是为初学者设计的简单、高效的游戏编辑工具。通过模块化搭建方式的编程,较易上手;同时基于对象的编程,能够实现代码复用,更加适合小组学习;3D场景和封装系统,让整体呈现效果更有美感。基于KODU的游戏设计课程对培养学生的计算思维有积极的意义,能够提升学生利用计算机解决实际问题的能力。本文结合KODU软件设计教学案例,论述借助思维可视化工具KODU的教学实践及反思。
【关键词】计算思维;KODU;教学实践
【中图分类号】G434 【文献标识码】A
【文章编号】2095-3089(2019)16-0228-01
一、计算思维与教育
计算思维作为计算时代的新产物,是一种可以灵活运用计工具与方法求解问题的思维活动,对促进人的整体和终身发展具有不可替代的重要作用。2006年,美国卡内基·梅隆大学(CMU)的周以真(Jeannette M. Wing)教授,为了帮助人们更好地认识机器智能,发表了题为Computational Thinking 的文章,提出了一种建立在计算机处理能力及其局限性基础之上的思维方式——计算思维。周以真教授提出了计算思维的定义:计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类行为。人们学习计算机相关知识,培养学生“像计算机科学家一样思维”。2008年,周以真教授进一步指出计算思维是一种分析思维,在问题解决的不同阶段会用到数学思维,在设计和评价复杂系统时会用到工程思维,在理解概念时会用到科学思维。在2017新版《普通高中信息技术课程标准》中明确提出计算思维作为学科核心素养的一个重要组成部分。课标中指出计算思维是个体运用计算机科学领域的思想方法,在形成问题解决方案的过程中产生的一系列思维活动。具备计算思维的学生,在信息活动中能够采用计算机可以处理的方式来界定问题、抽象特征、建立结构模型、合理组织数据。通过判断、分析、综合各种信息资源,运用合理的算法形成解决问题的方案。总结利用计算机解决问题的过程与方法,并迁移到与之相关的其它问题解决中。
而计算思维教育,就是通过对计算原理和过程的认识,掌握基本的计算方法,理解计算思维的本质,从而学会应用计算思维解决实际问题。计算思维教育可以落实到数学方法和工程方法的学习,如递归法、分治法以及形式化表达等方法,来理解计算思维的抽象、自动化等本质属性。
二、基于Kodu的教学实践
Kodu是一款可视化程序设计语言,它以3D游戏的模式介绍编程概念,以及极为简化的编程模型来降低初学者的门槛,是一款简单、直观、易上手的编程工具。学生能够自己动手设计原创的电脑游戏,激发无限创意,并了解程序的运作过程。学生在Kodu软件中可以学习建立一个虚拟的3D世界,并对虚拟角色编写程序,创造出有创意的、酷炫的作品,进而培养严密的逻辑思维、设计能力及创造力。
学习Kodu软件,不只是学习编程技术,还能了解利用计算机解决问题的方法。基于Kodu的教学实践,可采用一系列思维可视化工具,记录学生的学习过程、突发灵感及设计构思等。同时,这些思维可视化工具把学生难以用言语表述的设计构思图示化,能很好地展示学生的思维过程,是对学生的想象力、表达能力、视觉思维能力的综合反映,也是培养学生学会思考、分析问题和创造性思维的有效途径。
三、实例分析
下面以“垃圾分类—Kodu运用”课例为例,论述基于Kodu的编程教学实践。这节课的主要任务是设计正确投递干湿垃圾的方案,并在软件中实现。首先在场景中设置了五个对象:(1)红色城堡—湿垃圾箱;(2)蓝色城堡—干垃圾箱;(3)红苹果—湿垃圾;(4)黑色岩石—干垃圾;(5)青色机器人KODU—小明。如图1所示。
1.编程中体会抽象:
(1)设计故事情节。
教师布置的任务为:请帮小明设计把红苹果投进湿垃圾箱的方法,投放正确,系统计加5分,投放错误扣5分。
为了更好地完成设计,教师在课堂上进一步分解了任务。请同学思考,对象有几个?每个对象要完成任务是什么?通过思考这些问题,学生讨论填写出下面流程图。
学生在用流程图描述方法时其实也是讲述故事的过程,从中抽象出具体设计游戏任务的规则。例如有位同学设计的是小明看到苹果就自动靠近苹果,碰到苹果后抓取,然后看到红城堡自动靠近,碰到红城堡后把苹果投进红城堡。另一组同学觉得用键盘控制小明行进方向更有趣。这些都是具体实现的方法,也就是设计故事情节中抽象出具体实现规则。
(2)用编程语句实现规则。
以前面同学设计的方案为例,通过尝试,他设计出了实现的方法。具体小明和红色城堡的编程代码如图3和图4所示。
2.自动化实现。
从前面可以看出,Kodu是通过When(触发条件)DO语句(执行)实现具体功能的。我们知道自动化是计算思维的一个重要特征,例如图3中小明(kodu)对象看到苹果,快速靠近,碰到苹果后抓住,接着看到红色城堡,快速接近,碰到红色城堡就把苹果丢出去。图4中红色城堡碰到苹果分数加5,同时让苹果消失。
实际课上该同学演示时,前面都达到了预期目标,小明自动靠近苹果,拾起后王红色城堡前进。只是在苹果投进红色城堡后,小明还是不断靠近红色城堡,也就是说游戏没有结束。这时教师引导学生分析原因,学生在分析了语句后发现游戏没有结束的标记。因此他在城堡对象中添加了分数为5时显示胜利,游戏结束。如图5所示。这个解决问题的思维过程恰恰是运用计算思维的体现。
总之,在初学编程的阶段通过Kodu软件及其课程的学习,可以很好地发展学生的计算思维。由于Kodu基于游戏化的编程,并且规则简单,When…Do语句不需要更多的技术细节,不需要记忆。在分解具体学习任务时分析每个对象,包括它的行为和怎样受控。通过故事情节的设计,抽象出规则,也就是把各个功能整理出来,构造完成任务的模型,包括场景、对象等。在接下来的编程阶段,其实是形式化表达的方式,最后通过运行、调试程序实现自动化步骤。这也就形成了计算思维完整的过程:抽象——构造——形式化表达——自动化实现。经过这类课程系统化的学习,学生的计算思维能力将得到提升。
参考文献
[1]王荣良.计算思维教育[M].上海科技教育出版社,2014.
[2]魏晓风,蒋家傅,钟红,韩奇.我国中小学编程教育发展的路径思考[J].中国教育信息,2018(24):1-4.
[3]楊艳艳.基于KODU的编程思维可视化教学实践[J].中国信息技术教育,2018.
【关键词】计算思维;KODU;教学实践
【中图分类号】G434 【文献标识码】A
【文章编号】2095-3089(2019)16-0228-01
一、计算思维与教育
计算思维作为计算时代的新产物,是一种可以灵活运用计工具与方法求解问题的思维活动,对促进人的整体和终身发展具有不可替代的重要作用。2006年,美国卡内基·梅隆大学(CMU)的周以真(Jeannette M. Wing)教授,为了帮助人们更好地认识机器智能,发表了题为Computational Thinking 的文章,提出了一种建立在计算机处理能力及其局限性基础之上的思维方式——计算思维。周以真教授提出了计算思维的定义:计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类行为。人们学习计算机相关知识,培养学生“像计算机科学家一样思维”。2008年,周以真教授进一步指出计算思维是一种分析思维,在问题解决的不同阶段会用到数学思维,在设计和评价复杂系统时会用到工程思维,在理解概念时会用到科学思维。在2017新版《普通高中信息技术课程标准》中明确提出计算思维作为学科核心素养的一个重要组成部分。课标中指出计算思维是个体运用计算机科学领域的思想方法,在形成问题解决方案的过程中产生的一系列思维活动。具备计算思维的学生,在信息活动中能够采用计算机可以处理的方式来界定问题、抽象特征、建立结构模型、合理组织数据。通过判断、分析、综合各种信息资源,运用合理的算法形成解决问题的方案。总结利用计算机解决问题的过程与方法,并迁移到与之相关的其它问题解决中。
而计算思维教育,就是通过对计算原理和过程的认识,掌握基本的计算方法,理解计算思维的本质,从而学会应用计算思维解决实际问题。计算思维教育可以落实到数学方法和工程方法的学习,如递归法、分治法以及形式化表达等方法,来理解计算思维的抽象、自动化等本质属性。
二、基于Kodu的教学实践
Kodu是一款可视化程序设计语言,它以3D游戏的模式介绍编程概念,以及极为简化的编程模型来降低初学者的门槛,是一款简单、直观、易上手的编程工具。学生能够自己动手设计原创的电脑游戏,激发无限创意,并了解程序的运作过程。学生在Kodu软件中可以学习建立一个虚拟的3D世界,并对虚拟角色编写程序,创造出有创意的、酷炫的作品,进而培养严密的逻辑思维、设计能力及创造力。
学习Kodu软件,不只是学习编程技术,还能了解利用计算机解决问题的方法。基于Kodu的教学实践,可采用一系列思维可视化工具,记录学生的学习过程、突发灵感及设计构思等。同时,这些思维可视化工具把学生难以用言语表述的设计构思图示化,能很好地展示学生的思维过程,是对学生的想象力、表达能力、视觉思维能力的综合反映,也是培养学生学会思考、分析问题和创造性思维的有效途径。
三、实例分析
下面以“垃圾分类—Kodu运用”课例为例,论述基于Kodu的编程教学实践。这节课的主要任务是设计正确投递干湿垃圾的方案,并在软件中实现。首先在场景中设置了五个对象:(1)红色城堡—湿垃圾箱;(2)蓝色城堡—干垃圾箱;(3)红苹果—湿垃圾;(4)黑色岩石—干垃圾;(5)青色机器人KODU—小明。如图1所示。
1.编程中体会抽象:
(1)设计故事情节。
教师布置的任务为:请帮小明设计把红苹果投进湿垃圾箱的方法,投放正确,系统计加5分,投放错误扣5分。
为了更好地完成设计,教师在课堂上进一步分解了任务。请同学思考,对象有几个?每个对象要完成任务是什么?通过思考这些问题,学生讨论填写出下面流程图。
学生在用流程图描述方法时其实也是讲述故事的过程,从中抽象出具体设计游戏任务的规则。例如有位同学设计的是小明看到苹果就自动靠近苹果,碰到苹果后抓取,然后看到红城堡自动靠近,碰到红城堡后把苹果投进红城堡。另一组同学觉得用键盘控制小明行进方向更有趣。这些都是具体实现的方法,也就是设计故事情节中抽象出具体实现规则。
(2)用编程语句实现规则。
以前面同学设计的方案为例,通过尝试,他设计出了实现的方法。具体小明和红色城堡的编程代码如图3和图4所示。
2.自动化实现。
从前面可以看出,Kodu是通过When(触发条件)DO语句(执行)实现具体功能的。我们知道自动化是计算思维的一个重要特征,例如图3中小明(kodu)对象看到苹果,快速靠近,碰到苹果后抓住,接着看到红色城堡,快速接近,碰到红色城堡就把苹果丢出去。图4中红色城堡碰到苹果分数加5,同时让苹果消失。
实际课上该同学演示时,前面都达到了预期目标,小明自动靠近苹果,拾起后王红色城堡前进。只是在苹果投进红色城堡后,小明还是不断靠近红色城堡,也就是说游戏没有结束。这时教师引导学生分析原因,学生在分析了语句后发现游戏没有结束的标记。因此他在城堡对象中添加了分数为5时显示胜利,游戏结束。如图5所示。这个解决问题的思维过程恰恰是运用计算思维的体现。
总之,在初学编程的阶段通过Kodu软件及其课程的学习,可以很好地发展学生的计算思维。由于Kodu基于游戏化的编程,并且规则简单,When…Do语句不需要更多的技术细节,不需要记忆。在分解具体学习任务时分析每个对象,包括它的行为和怎样受控。通过故事情节的设计,抽象出规则,也就是把各个功能整理出来,构造完成任务的模型,包括场景、对象等。在接下来的编程阶段,其实是形式化表达的方式,最后通过运行、调试程序实现自动化步骤。这也就形成了计算思维完整的过程:抽象——构造——形式化表达——自动化实现。经过这类课程系统化的学习,学生的计算思维能力将得到提升。
参考文献
[1]王荣良.计算思维教育[M].上海科技教育出版社,2014.
[2]魏晓风,蒋家傅,钟红,韩奇.我国中小学编程教育发展的路径思考[J].中国教育信息,2018(24):1-4.
[3]楊艳艳.基于KODU的编程思维可视化教学实践[J].中国信息技术教育,2018.