首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

儿童编程课程的设计与开发

作者

虹口区KODU沙龙发起人曹磊老师,长期开展KODU可视化编程软件的相关实践研究,旨在开发适合初中段儿童的KODU编程课程,将程序思维、算法思维、工程思维深深地种植于孩子的大脑深处,为他们高中的算法学习进行铺垫,也为其形成21世纪必备品格、关键能力、思维方式提供有力支撑。

2017年11月,《中国信息技术教育》杂志2017年第21期刊登了题为《走近儿童编程教育》的专题系列文章,其中包含曹磊老师《儿童编程课程的设计与开发——以Kodu为例》一文。文章基于KODU软件,从课程开发背景、课程目标定位、课程内容设计、课程教学策略的设计与实现等方面为读者指明了儿童编程课程的实施路径,分享了珍贵的实践经验,给出了中肯的意见建议。

正文

儿童编程课程的设计与开发

——以Kodu为例

【摘要】此范式研究,提炼了笔者领衔的KODU程序设计课程的开发背景、目标定位、内容设计、教学策略的设计与实现等,论述了儿童KODU编程课程设计与开发的工作要点和研究成果,阐述了课程在算法思想、工程思想、计算思维等方面的培育功能,具有较强的操作性、借鉴性。

【关键词】 课程开发 儿童程序设计 编程学习 KODU

一、课程开发背景

随着智能手机的普及,各类手机APP软件、智能化服务与我们的生活变得愈发密不可分,中小学生很小便能接触到许多电子产品与各种程序软件,他们是数字化原住民,有着刻在基因里的程序意识,往往对“程序是如何运作的”表现出极大的兴趣。

由于种种原因,在义务教育阶段,计算机这门原本属于思维设计类的课程,逐渐成为偏软件操作类的课程。思维培养目标的缺失,教材内容的滞后,致使不少学科教师对学科发展、新技术的敏感性日益降低,程序设计等专业能力慢慢荒废,同时,教学内容与生活实际的渐行渐远,造成学生的学习兴趣不高。引入编程课程,能够把握学科内涵,重塑课堂,提升课堂学习动力,帮助教师守住专业、专业发展。

二、课程目标定位

泰勒在《课程与教学的基本原理》中指出,制订任何课程和教学计划时,都必须试图回答以下4个问题,即:力求达到何种教育目标?为学生提供怎样的教学经验?如何有效组织好这些经验?如何确定目标得以实现?这四个问题对应的就是目标、方法、管理与评价。作为课程设计与开发的第一步——目标定位,决定了该课程的愿景、范围、品质和生命力。

以儿童KODU编程课程为例,该课程开发的第一要务是确定编程课程的目标,明晰儿童对编程学习的接受程度,并选择与之匹配的工具等三项定位工作。

首先,由课程开发背景可知,编程课程本身是一种适应时代、学生、教师需要的课程内容推送,其目标绝不是停留在知识层面,更要指向思维、素养、能力层面的提升,帮助学生获得利用信息技术工具来处理信息、解决真实问题、获得终生学习技能的能力,培养学生算法思想、工程思想、计算思维,提升其信息素养。

其次,该编程课程的学习对象为六年级学生,即11-13岁之间的儿童。根据皮亚杰的认知发展阶段论所述,这个年龄段的儿童正处于具体运算与形式运算的边界上,他们从必须与他们所熟悉的物体或场景相联系才能形成概念、发现问题、解决问题,慢慢走向能够利用语言文字在头脑中重建事物和过程来解决问题,其思维能力慢慢超越对具体可感知事物的依赖,逐渐形成抽象思维。基于此,该课程的定位应该充分考虑到学生的年龄特征,尊重个体发展的差异,关注学生的需求,在学生具象思维到抽象思维的转变之路上,适时、适切地提供支架、推送服务。

最后,该编程课程所选择的工具KODU,它是一款面向对象的可视化编程软件,也是为儿童设计的简单、高效的游戏编辑工具。KODU的特点是:通过模块化搭建的方式编程,低结构、易上手;基于对象的编程,能够实现代码复用,更加适合小组学习;3D场景和封装系统,让整体呈现效果更有美感。虽然KODU中的“When...Do...”语句、切换页不能很好地解释顺序、选择、循环三种基本程序结构,但从发展的眼光看,这三种标准的程序结构,并不是固化的,在某些工程条件下,它们不一定是最优选择,也会发生异化。因此,被某些人认为是先天不足的KODU编程方式,并不会影响学生学习程序思想,甚至还有另辟蹊径的功效。此外,KODU中所包含的编程语言元素,如多线程、消息传递机制等,能够为学生的未来程序学习打好基础。

以上对“课程目标、学习对象、所选择的工具”三项内容的定位工作并不是孤立存在的,需要整体把握,融合起来看。比如:KODU工具具有一种偏艺术类的场景设计功能,如果仅仅局限在学科视角,或许我们会将之摒弃或弱化,但如果从育人的视角来看待它,将之与程序设计、工程设计结合起来教学,它能够成为一种正向推动力,或者说艺术设计本身,也可以是工程的、逻辑的、程序的。通过以上分析,我们将儿童KODU编程课程设计理念归纳为以下观点:

(1) 课程应该集吸引力、思维力、创造力、应用力、学习力、研究力、协作力、思辨力于一体,成为算法思维、工程思想、信息素养培养的集中场所。

(2) 课程应该为学生持久理解学科概念,关注程序及周边新技术、了解科技发展动态提供支持。

(3) 学生通过基于项目的学习、基于问题的学习等知识建构过程,提升学习兴趣,形成用程序思想、抽象思维看待问题的习惯、意识和能力。

(4) 通过课程学习,学生应成为以KODU为“学习伙伴”的学习者,算法思维的应用者,现实生活中真实问题的解决者。

三、课程内容设计

儿童KODU编程课程是设置在小学高年级的拓展型课程,它是在计算机学科现有教学内容的基础上补充编程学习内容的一种尝试。笔者认为,该课程的内容设计是对课程目标定位的一种诠释,它应该囊括内容的甄选、内容的组织、内容的载体设计等三方面的内容,具体如下:

1.内容的甄选

选择课程内容不仅要从KODU工具自带的操作类、程序类、场景类、学习类的内容中,甄选出与培养目标匹配的部分,还要进一步挖掘契合课程目标的思维类、技能类、拓展类、习惯养成类的内容、开发教学资源。我们可以采用制定课程目录框架的方法,罗列出课程所包含的内容,并根据其难易程度、学习先后顺序进行梳理,也可以按照基础部分、拓展部分对其进行分类。

在选择课程内容时,还可以从以下七个方面进行考量、验证,确保内容的品质,使之更好地为目标服务。

▶稳定性:选择相对稳定的、经典的内容,规避那些因技术更新而容易被替代、显得过时的知识内容。

▶适宜性:选择符合学生年龄特征、学科特点的教学内容。(如选择可视化编程软件KODU作为儿童编程课程的教学媒介)课程内容选择的过程中,还应考虑学生的需求,课程实施环境的文化背景、亮点特色等。

▶联系性:课程内容应与现实世界建立联系,注重知识迁移,创设现实情境、指向现实问题,力求“从生活中来,到生活中去”。

▶发展性:课程内容应具有发展观,关注人的发展、关注科技的发展、关注思维能力的发展,部分内容可以为学生预留后续学习的“接口”。

▶创新性:课程内容中要有创新的内容,更要有创新思想、创意创编的培育功能。

▶整合性:强调有利于学习过程中学科内容各部分的整合以及跨学科知识内容和学习方式方法的整合。

▶趣味性:课程内容应能够延续、放大学生学习兴趣,通过游戏化设计、低结构设计,让学习兴趣转化为学习动力。

2.内容的组织

课程内容的组织形式,有直线式与螺旋式、纵向组织与横向组织、逻辑顺序与心理顺序等等。面对儿童KODU编程课程的内容组织时,我们常常会选择项目活动的组织方式,即以完成某个项目为目标,将与之相关的知识与技能汇聚起来,项目与项目之间从简单到复杂,从抽象到具象,从有支架到无支架,从而实现学生螺旋式上升的学习过程。有时我们也会对重要知识点、核心内容进行横向排列,对每个知识点的相关内容进行纵向组织,完成该内容从深度、广度、应用度的逐渐提升。

我们采用“搞清楚谁为谁服务”这一方法,来厘清内容之间的关系,更有效地组织课程内容。如KODU课程中,场景为游戏服务、对象让场景更丰富、程序让对象动起来。同样一个“小酷吃金币”的游戏,如果是为学习场景搭建而服务的,那么在内容组织上应重点关注游戏中场景支持游戏实现的功能性部分,或者是为了美化而存在的修饰性部分;如果是为了学习编程而服务的,那么在内容组织上应重点关注对象小酷的运动方式或者金币生成的程序设计。

与此同时,我们可以选用“自顶向下”、“自底向上”的程序设计方式来组织内容,使得内容更有逻辑性、顺序性,也可以像一些电影中根据剧情需要运用倒叙、插入的方式进行内容拓展,在需要的时候,推送适切的内容。无论用哪种方式组织内容,学习过程都应该是有序、有趣、有效的。

3.内容的载体设计

课程内容的载体,往往是课程内容的物化部分,如教学大纲、课程计划、教材、教学资源等。教材作为联系课程设计与课程实施的重要环节,是课程标准的具体化,具有为学生提供权威的信息源、利于教师完善教学方法等指导教学的功能。

《跟我学做GAME:KODU程序设计入门》(以下简称教材),是课题组开发的KODU编程课程的教材,包含1个引入单元、6个项目学习单元、1个综合性开放单元,共8单元内容。围绕贯穿单元始终的项目主题,通过 “活动目标介绍”、“活动任务分析”、“新知探究”、“游戏调试与修改”、“游戏进阶”等多个板块开展项目学习。教材通过娜娜(游戏初学者)、小酷(资深游戏设计师)这两个吉祥物的对话,进行情景引入,帮助学习者具备“从现实世界抽象——建模——设计——完成作品”的能力。同时,学习者需要对作为人造物的作品,进行不断地调试、检验,看看它与设定的目标是否一致。教材中设置了“想一想”、“试一试”、“议一议”、“理一理”、“小贴士”等栏目,为课程教学提供了有效的教学组织建议,为学生留下了停顿、思考的时间和空间。

KODU教材承载着计算机学科有别与其他学科的重要能力的培育,该教材不同章节的体例有所不同,它并不追求一种格式上的统一美,而是追求一种为了表达的需要,为了内容的需要,为了难易度设置的需要,选择适切的表达方式的内涵式助学之美。从某种程度上来说,它更适合教师的使用、学生的学习。

四、课程教学策略的设计与实现

课程的设计需要开发者运用高级思维,创造出趣学、易学、学以致用的课程“硬件”与课程“软件”。这些“软件”包括了教学管理、实施、评价等一系列策略与方法,缺少了它们的课程就像“一台光有硬件,但没有安装软件的电脑”一样,就算硬件再强大,也没有“用武之地”。在构建KODU课程教学策略与方法的过程中,我们希望进一步深化“内容为王”,让教学模式、教学策略与方法都能为了内容而“私人订制”。

我们可以选用信息加工型教学模式、社会型教学模式、个人型教学模式、行为主义系统型教学模式等,运用多重方法构建知识。比如:KODU课程中运用信息加工型教学模式,通过介入学生习得概念的过程,提高其思维技能;通过布置探究训练任务,培育学生科学探究、推理的能力;运用社会型教学模式,关注学习中学生的合作与分工状态,并予以正确引导;运用个人型教学模式,尊重学生个体差异、研究性别不同带来的概念结构和成长状态的不同,设置坡度任务,构建个性化学习资源等。

下面将列举一些我们制定的课程教学策略:

▶创设情境与问题,培育高阶思维

思维和思想的培养,不是简单的知识与技能的学习。通过情境与问题的创设,能够反映复杂的现实生活,展示不确定的劣构问题,不仅推动学生从接受性学习向研究性学习转变,而且提高了他们的学习内驱力,帮助他们在一次次学习内容与真实世界的映射关系中,成为现实生活中真实问题的解决者。在这一过程中,包括分析、评价、创造等在内的高阶思维,特别是课程目标中提到的计算思维、工程思想、信息素养等方面得到了培育。

▶搭建“缓坡”支架,发展高阶思维

根据最近发展区理论,学生发展水平可分为现有水平和潜在水平,最近发展区介于两者之间。通过不断设置难度递增的阶梯问题这一“缓坡”,同时提供必要的学习支架,让学习者始终处在一个“小步走、不停步”的状态,通过不断跨越新的最近发展区,实现思维与能力的持续性发展。

▶基于项目合作,升级高阶思维

KODU编程课程中的项目合作学习其实就是一个创造游戏产品的过程,在这个过程中学生既要遍历“通过文字描述明晰产品目标”、“在脑中构思、设计产品形态”、“在KODU中实现产品”等几个步骤,形成用程序思想、抽象思维看待问题的习惯、意识和能力,又要通过有明确责任分工的互助性学习,更合理有效地进行分工合作,更大程度地感受接纳和期待,促进学习能力、思维能力和合作能力的更快提高。

▶设置改装任务,激发高阶思维

这里提到的改装任务,更多的是指在教材主线任务的基础上,增加具有挑战性的拓展任务和具有内容补充效应的分支任务。挑战性任务的作用就是“打怪升级”,让学生提升技能,获得成就感。补充性任务的作用就是“开拓眼界”,让学生兼听则明、换位思考,获得想象力。改装任务还承担着培育学生“左脑”统治的逻辑、计算能力和“右脑”主导的共情、意义追寻、创意能力的职责,对学生元认知策略的形成具有积极的影响。

▶建立学习档案,记录思维发展

建立学生的过程性学习档案,包括教材中思维可视化的栏目表单,项目组开发的各类KODU设计模板,教师独创的活动记录单,以及学生各版本的KODU游戏设计工程文件等,同时将部分学生纸质的材料,进行数字化转换,归于学习档案,并在教学过程中培养学生良好的档案管理习惯。在这一过程中,特别关注学生思维的过程记录,以及思维可视化的研究,帮助学生记录完整的学习过程、思考行为、作品改善过程等,为教学行为的改善提供数据支撑。

编辑:王静

制作:王静

审核:陆梅卿

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180402G1E8CR00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券