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

2017-12-07 16:16曹磊
中国信息技术教育 2017年21期
关键词:课程内容编程内容

曹磊

课程开发背景

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

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

课程目标定位

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

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

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

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

最后,该编程课程所选择的工具是Kodu,它是一款面向对象的可视化编程软件,也是为儿童设计的简单、高效的游戏编辑工具。其特点是,通过模块化搭建方式的编程,低结构、易上手;基于对象的编程,能够实现代码复用,更适合小组学习;3D场景和封装系统,能让整体呈现效果更有美感。此外,Kodu中所包含的编程语言元素,如多线程、消息传递机制等,能为学生的未来程序学习打好基础。

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

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

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

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

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

课程内容设计

儿童Kodu编程课程是属于拓展类课程,它是在信息技术学科现有教学内容的基础上补充编程学习内容的一种尝试。笔者认为,该课程的内容设计是对课程目标定位的一种诠释,应该囊括内容的甄选、内容的组织、内容的载体设计等三方面内容。

1.内容的甄选

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

在选择课程内容时,还可以从以下七个方面进行考量、验证,确保内容的品质,使之更好地为目标服务。稳定性,选择相对稳定的、经典的内容,规避那些因技术更新而容易被替代、显得过时的知识内容;适宜性,选择符合学生年龄特征、学科特点的教学内容,还应考虑学生的需求,课程实施环境的文化背景、亮点特色等;联系性,课程内容应与现实世界建立联系,注重知识迁移,创设现实情境、指向现实问题;发展性,课程内容应具有发展观,关注人的发展、关注科技的发展、关注思维能力的发展;创新性,课程不仅有创新的内容,更有创新思想、创意创编的培育功能;整合性,强调跨学科知识内容和学习方式方法的整合;趣味性,通过游戏化设计、低结构设计,让学习兴趣转化为学习动力。

2.内容的组织

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

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

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

3.内容的载体设计

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

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

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

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

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

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

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

猜你喜欢
课程内容编程内容
课程思政视域下职业院校实训课程内容的重构
玩游戏学编程,Blockly Games上手玩
纺织机上诞生的编程
析课程内容 谋教学佳策——“数的认识”模块知识的教学思考
新生态学校如何诠释课程内容
编程屋完成数百元万天使轮融资
学编程,先画画
幼儿园艺术课程内容的选择