基于Web的游戏化编程平台设计与开发

作者: 缑娟娟 王婧雯 李怡静 潘以锋

基于Web的游戏化编程平台设计与开发0

摘要:随着教育信息化的不断推进,利用技术促进学习者有意义的学习逐渐引起教育研究者们的注意。有意义学习旨在让学习者建构的、深层次的进行学习,可以有效地实现以学生为本的教育,促进学生的良好发展。研究基于有意义学习理论,从深度学习准备、知识建构迁移、深度评价反思三个阶段出发,以培养学生学习主动性、元认知能力、沟通协作能力以及问题解决能力为整体目标,构建了基于有意义学习的游戏化编程平台的基本框架。根据该框架进行平台的设计和开发,并提出了基于此系统的学习途径。

关键词: 有意义学习;游戏化编程平台;系统设计开发

中图分类号:TP311        文献标识码:A

文章编号:1009-3044(2023)06-0033-06

开放科学(资源服务)标识码(OSID):

1 引言

《教育信息化2.0行动计划》指出要继续推进教育平台空间等的建设[1],以便促进教育模式改革以及教育资源的高效利用。特别是在新冠疫情期间,响应“听课不停学”的号召,线上教学平台更是得到了蓬勃的发展。此外,近年来编程教育也不断地蓬勃发展,培养学生的计算思维是高校的培养目标之一,编程类课程作为高校培养学生计算思维的主要方式,其良好发展受多种因素的制约,具体表现在学生学习兴趣不高,对知识点的掌握不熟练等[2],此外,目前编程教学的形式还是以班级为单位开展,对于学生的个性化发展不够充分。设计和开发能够促进学生积极参与且保证学生个性化发展的编程平台成为当前亟待解决的问题之一。可见,信息技术为教育提供了有力的支撑。然而,信息技术在便利了知识的获取的同时,加速了知识学习的过程,导致学习机械化和表层化。

有意义学习旨在让学习者建构的、深层次的进行学习,而非机械记忆的、浮于表面的学习[3]。因此为激发学生学习兴趣,优化教学效果,学界将游戏化和个性化的理念引入教学,遵循有意义学习的特点,实现以学生为本的教育,促进学生的良好发展。

2 文献综述

2.1 有意义学习

有意义的学习虽然早在20世纪60年代就已经被提出[4],但是至今不存在一个统一的定义。美国认知教育心理学家戴维·保罗·奥苏贝尔(David Pawl Ausubel)提出了“有意义学习”理论(Meaningful Learning)的概念,他认为:如果学习任务与学习者现有的知识结构有关联,且并非一种特定的答案,那么有意义的学习就会发生[5] 。梅耶(Richard E. Mayer)则认为有意义的学习是符合建构主义理论的[6],它的表现形式是良好的记忆和良好的迁移能力[7]。

乔纳森(David H. Jonassen)的有意义学习理论也是讨论得比较广泛的理论之一。其将有意义的学习视为对于学生十分重要的学习方法。规定了它的5种属性:主动的、有意图的、建构的、真实的和合作的。他认为当学习活动同时具有这5个属性,那么学习者更容易开始有意义的学习[8],该5种属性的如下:

1)主动的:有意义的学习是主动的,即学习者在自然的环境下进行学习时,需要主动参与学习活动或操作学习工具,在此过程中不断进行反思以进行知识的建构和内化[8]。主动参与是有意义学习的前提条件。

2)真实的:有意义的学习是真实的[8],即在实际的问题或情境中进行知识或技能的学习,以防学习者理论与实践分离,也更加便于知识的迁移。

3)建构的:有意义的学习是建构的,即学习者在学习过程进行观察和反思,反思使得新的知识与旧的知识得以整合,从而达到知识的建构和内化[8]。

4)合作的:有意义的学习是合作的,即学习者在学习过程中需要互相合作交流,沟通以达成共识,促进知识内化,完成协同意义建构[8]。

5)有意图的:有意义的学习是有意图的,即学习活动应该具有明确的目标,学生应该知道要学什么,学会了什么,并反思学习过程,以便及时进行调整[8]。

2.2 游戏化编程平台现状

Venter(2020)[9]分析了2014年到2019年游戏化系统在高等教育编程教学中的使用情况,发现最受欢迎的游戏化元素依次是排行榜、积分以及徽章。研究表明游戏化对学生动机有积极影响。此外,编程教学中执行游戏化最常见的有两种方法,利用已有的游戏化平台或开发新的游戏化平台。

2.2.1 自主开发的游戏化编程平台/系统

游戏化目前已经成为一种新的编程概念教学方法[10],具体是指在非游戏化的环境中加入游戏设计的理念、元素、方法和机制等[11],例如勋章、排行榜等,从而帮助学生提升学习动机,促进学生主动参与。

综上研究可见:1)这些自主研发的游戏化编程平台都从解决编程问题开始,很少会进行编程知识的学习。2)对于反思与师生之间的反馈机制还有欠缺。

2.2.2 已有的游戏化编程平台/系统

随着教育信息化的不断推进和游戏化教学的价值被发掘,许多的国内外游戏化编程平台应运而生,笔者对目前被广泛用于研究的游戏化编程平台进行分析,按照适用对象和适用范围对平台进行比较。

从表1可发现:1)多为编程游戏;2)模块化的方式使得代码的编写很有局限性;3)缺乏交流互动机制和个性化学习机制;4)缺乏对编程知识的系统介绍。

当前大学生的学习主动性越来越强,并且会进行反思性学习,来促进自身进行深度学习[16]。在研究中显示教学方式方法的效果、学生主动学习、学业任务以及时间分配会对大学生的学习成果产生显著的积极影响[17] 。由此可以看出当代大学生是学习目的明确,注重学习效率的学习主体。

通过对上述平台的分析并结合大学生的学习特点,设计基于有意义学习的游戏化编程平台应该注意:1)平台中加入游戏元素,一方面采用加入游戏元素的形式而不是游戏的形式,注重对编程知识的掌握,另一方面游戏元素的加入可以提升学习者的学习兴趣。2)提供高互动的对话机制。平台注意师生、生生之间的相互交流,有利于意义建构。3)自动评分与及时反馈机制。良好的及时反馈有利于学生积极状态的保持。4)自我监控相关机制。

3 基于有意义学习的游戏化编程平台功能分析

结合对有意义学习的理解,本文将有意义学习定义为:学生主动参与学习过程,明确整个学习过程以及每个阶段的学习目标,在学习过程中能够积极参与讨论进行知识建构,并在课后及时反思以完善知识建构体系,以达到能够综合、灵活运用所学知识的一种学习过程。编程学习是非常有必要的[12],但编程学习的趣味性相对而言并不高,特别是在班级化的教学环境中,编程学习的迁移应用是一个很大的问题。综上,本研究将有意义学习编程平台设计为课前有意义学习准备、课中主动参与建构过程以及反思与评价阶段,其针对学生四个方面的培养:学习主动性、元认知能力、沟通合作能力以及问题解决能力。

编程平台的功能设计需要实现对学生四个方面培养的要求,即根据学生培养的要求来设计编程平台的功能,表3是对四个培养要求的具体描述以及功能设计。

3.1 学习主动性

学习主动性也就是促进学习者参与到课堂的学习活动中来,学习者只有参与课堂活动,才能从中学到知识,完成知识的建构与内化。促进学习者参与是有意义学习的前提。在编程课程的学习中,最常见的问题是学生学习动机不高,然而有学者证明游戏化确实可以提升学生的学习动机并促进学生的主动参与[18-19],因此可以考虑在编程平台中加入游戏化。穆肃[20]等学者的研究表明大多数的学习者认同在线协作同伴会对自己产生积极的影响。据此,针对学习主动性的培养,系统设计如下:1)加入排行榜、积分、徽章以及关卡等游戏元素,提升学习兴趣;2)创设协同交流学习空间,支持协同学习;3)对学习过程进行及时的评价与反馈,维持学生主动参与。

3.2 元认知能力

元认知是学习者对自身学习情况的了解,表现为学习进度确定、学习行为调节以及学习结果反思[21]。有研究分析了54篇国外关于元认知的实验与准实验的研究,研究表明元认知对学生的学习存在积极影响,研究还提出学生对学习进程的计划、监督与反思都能够较好的提升学生的学习[22]。 可见,针对元认知的培养,系统的设计应考虑:1)跟踪学习行为,学习进程与成就可见;2)学习数据可视化,监控学习状态;按照学习情况个性化推荐题目;教师适当干预,调节学习过程;3)协作交流,促进意义建构;实时评分与及时反馈,促进反思。

3.3 沟通协作能力

21世纪教育的本质已经由简单的知识传递转向多元化能力的培养,“4C能力”(Critical Thinking, Communication, Collaboration, Creativity),即批判性思维、沟通能力、协作能力、创新创造能力,作为21世纪学生必备的四项能力,为培养未来社会发展所需人才指明了方向[23]。有效的表达是有意义学习的一个方面,也是学生未来进入社会必不可少的一个能力。系统要培养学生的沟通协作能力,应该从基于项目的学习方式入手,创建项目小组以及组内、组件交流空间,并建立同伴互评机制。

3.4 问题解决能力

问题解决是指问题解决者与动态的任务环境之间成功交互的过程[24]。随着现代社会对非常规工作需求的增加,复杂问题解决能力已成为胜任未来工作的关键能力之一[24]。PISA结合前人研究,将问题解决分为四个阶段[25],本平台依据此四阶段来设计:1)探索和理解,即观察问题情景,理解信息;2)表征,将问题与先验知识联系;3)计划和执行,设计解决方案并执行;4)监测与反馈,监测学习进程,系统跟踪学习行为,通过数据反映学习情况。

4 编程平台设计与开发

编程学习平台的设计与开发过程包括前期分析、平台设计与开发两个部分,如下所示。

4.1 前期分析

本平台面向上海某高校Web编程课程的初学者,为提高学生学习兴趣、促进编程知识迁移应用以及促进学生交流协作而设计,通过对任课教师的了解,得出以下结论:学生感觉编程有点无聊,上课注意力难以集中;对所学编程知识难以灵活综合的运用。希望平台能够帮助他们提升学习兴趣,提高对知识迁移运用的能力。

4.2 平台设计与开发

经过对有意义学习以及平台功能的分析,游戏化编程平台将按照准备阶段、迁移建构阶段和反思评价阶段三个阶段来设计,平台主要围绕基础知识学习、小组项目以及个人中心三个模块展开,基础知识模块主要提供编程知识的学习以及测试,小组项目模块针对某个项目进行小组合作学习,个人中心主要提供教学监控和调整。所有的设计都围绕学习主动性以及其他三项能力的培养展开,具体如图1所示。

从图 1可以看出基于有意义学习过程的游戏化编程平台面向学生的学习主动性、元认知能力、沟通协作能力以及解决问题能力的促进和培养。游戏化编程平台主要包括三个板块:基础知识学习、小组项目以及个人中心,以下将分为三个阶段进行介绍:

4.2.1准备阶段

准备阶段,学生需要在基础知识学习板块进行视频学习,并完成游戏化冲关测试,完成测试可以获得徽章,并且个人战绩会在排行榜中显示,这也是知识储备阶段;在小组项目方面,学习者在此阶段需要进行学习小组划分,确定小组项目主题,完善小组信息;学习者在此过程中出现疑问可以在平台上对学生或教师提问,也可回答别人提出的问题,而学习者的这些行为也都会被记录下来,学习者可以在个人中心进行查看。

4.2.2 迁移建构阶段

迁移建构阶段,平台会记录学习者在基础知识学习板块的学习和测试情况并反馈给教师,教师则根据系统的反馈情况对学生进行重难点的讲解和学习,且平台能够根据学习者的测试情况进行个性化题目的推荐,以此保证学习者基础编程知识的学习;同一小组的学生通过讨论确定好项目主题后,需要确定项目计划和所涉及到的知识点,并在班级内进行项目进度汇报;学习者的学习情况和进度可以在个人中心中查询,如图 2所示,知识点学习情况会在知识图谱中反映出来,红色代表熟练掌握,黄色代表初步掌握,蓝色代表未掌握。

经典小说推荐

杂志订阅