游戏编程融入教学中的应用研究
杨兰娟++王金双++陈萍++陈融
摘要:针对《程序设计基础》课程中学习低效、学生学习动力不足的问题,文章尝试用游戏编程策略去融入教学,分析该教学策略的效果并进行反思改正,设计出符合我校本土化的程序设计类课程游戏案例教学模式。教学实践表明,该模式比传统课堂更具吸引力、实践性和探索性,有助于激发学员的学习兴趣,更好地培养学员融会贯通、解决实际问题的能力。
关键词:程序设计;游戏编程;Allegro
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)11-0141-02
Abstract: Aiming at learning in the program design basis curriculum inefficient, the problem of insufficient student learning motivation, this paper attempts to use game programming strategy to go into teaching, analyzing the teaching strategy, and to reflect on the effect of correction design conforms to the programming classes with the localization of the game in our school case teaching model. Teaching practice shows that the model more attractive than the traditional classroom, practical and exploratory, helps to arouse students' interest in learning, to better cultivate students achieve mastery through a comprehensive study, the ability to solve practical problems.
Key words: Progarm designing; game programming; Allegro
《程序设计基础》作为全校学员开设的基础课,目标在于培养学生的编程能力和问题解决能力,为后续的专业课程奠定基础,然而从对部分师生访谈发现,课程教学出现了“学生难学、学得低效;教师难教,教得低效”的局面,究其原因,主要是因为在教学实践过程中,授课内容过分强调变量、函数、格式、结构等编程语言和程序结构的技能,缺少对程序设计分析思路的训练。枯燥的内容、满堂灌的积弊、验证性的实验,使得学生缺乏学习兴趣,学习动力不足。实践表明,没有学生主动参与的任何教学改革将会以“走过场”告终。
1 游戏编程策略应用分析
麻省理工学院和微软公司提出“现代教学法+艺术化游戏环境=下一代教育媒体”[1],游戏化教学将教育与游戏结合,能展现具体情境、使学生在学习中娱乐,从而达到探究实践、深度学习的目的。
根据游戏式教学的内涵和理论基础,针对学员兴趣不浓、动力不足、效果低效的问题,笔者认为,在《程序设计基础》课程中开展游戏案例编程,将知识点与游戏恰当结合,变“堵”为“疏”,是个可行的策略。
2 游戏编程策略的应用实践
2.1 教学设计
2.2 教学过程
(1)Allegro的学习
Allegro最开始被研发于八十年代后期,是能跨多个平台支持多种语言的2d游戏引擎。该引擎提供基本的如图形图像操作、声音输入输出、文件管理系统等功能。
Allegro的学习手册我们会在课前通过在线教学平台SPOC推送给学生,学习内容主要包括allegro头文件、库文件、初始化allegro环境、设备及插件、如何创建一个绘图窗口、游戏循环、以及游戏完成后的清理(内存释放),学生对该工具的学习基本控制在1节课内。
(2)主题的引入
在任务驱动的方式下,设计一些贴近生活受学生欢迎的游戏程序,如海底鱼群、愤怒小鸟、打靶、超级玛丽、游戏扑克牌、星际大战等,如图2、图3,这些游戏程序有的是基础知识(循环、数组、逻辑判断、指针、函数),有的是知识综合的运用,通过游戏程序的开发,能把这些重难点背后的知识串联起来并迁移应用。
(3)小组的合作
对于综合性的游戏案例,可以开展小组合作。小组内要讨论游戏任务需要哪些模块,如何设计界面、实现的先后顺序, 关键问题和解决方法,再基于任务进行成员细致分工, 任务完成后小组成员还应探讨其逻辑是否全面、功能是否完整,改进不足。在这过程中, 每个同学的编程思路和对知识点的运用均得到很好的展示, 合作意识不仅增强,成就感得到满足,更重要的是对于知识点的常见错误能得到很好的纠正。
(4)成果的展示
游戏案例更适合分享。在展示环节,我们还增加了案例测试。同学们对各组作品开展测试并提问,提出反馈意见。进而讨论得出最佳的实施方案,完善其作品。最后由老师进行知识点的概括总结,并抛出新的任务和问题,启发学生思考。
3 效果反思及建议
3.1 效果分析与反思
本次教学具有以下优点: 一是课程内容生动活泼, 教学案例采用贴近学生生活的各种小游戏,绝大多数学生表露出极大兴趣和热情, 小部分学生可能由于基础薄弱,畏于编程,但讨论比较积极,能提出自己的思路。在接触allegro的前期, 学生看见一大段的函数调用,会有畏难感,为了减少学生学习新工具的挫折感, 教师针对少数工具使用能力较弱的同学,采用演示答疑、同伴互助等策略; 二是重视学生的参与, 评价学生合作能力, 积极鼓励和激发他们的竞争力、创造力。
3.2 建议
(1)案例很关键
使用学过的语言来实现自己喜欢玩的小游戏,对学生来说很有吸引力。案例的来源很多,教师在引入案例的时候,选择精简、有趣、和知识点紧紧相扣的案例,有些难度大、耗时多的案例有时会起到反作用。
(2)引导很重要
将游戏编程策略引入到教学中,很大程度提高了学生的动力和兴趣,但游戏任务的开发,对学员综合能力要求较高,学生能行云流水般把程序的代码写出来的很少,要不断地给予引导和提示,兴趣带入门,实现是关键。教师在实际教学过程中需要一定的灵活性,可以准备好案例的半成品,素材库的筛选,学生把游戏的功能填进去,最终完成一个完整的作品,这样最大的好处是紧扣知识点开展训练,领悟程序编写的思路,又能提高其成就感。
参考文献:
[1]MarcPrensky.Digital Game — Based learning[M]Mcgrow-hill trade,2000.
[2]段明希.数字化游戏学习的研究[D].华东师范大学,2008:3.
[3]马颖峰,隋志华.基于 Flow 理论的教育游戏沉浸性设计策略研究——教育游戏活动难度动态调控研究[J]:电化教育研究,2010(3):54-55.
[4]蒋宇,尚俊杰,庄绍勇.游戏化探究学习模式的设计与应用研究[J].中国电化教育,2011(5):85-86.
[5]马颖峰,贺宝勋.网络游戏式活动课程—游戏与教育结合的平衡点探微[J].现代教育技术,2005(6):35-38.
[6]孙在文,邓鹏,祝智庭.基于娱教技术的体验学习环境构建[J].电化教育研究,2005(7):24-27.
[7]杨卉,王陆,马如霞.网络游戏与教育融合的探究—游戏式教学社区初探[J]电化教育研究,2006(4).