正文:
图1 游戏界面
知识点:随机函数、控件数组、计时器、鼠标事件
技术难点:(1)昆虫的随机显示 (2)响应鼠标事件的处理过程
案例分析:该游戏功能简单,操作方便,设计难度适中。要求学生能灵活运用计时器和控件数组,控制昆虫的显示。
案例演示:从腾讯QQ餐厅游戏的“打地鼠”功能引入,演示“打昆虫”游戏的操作。使学生的注意力集中到游戏的演示操作,课堂气氛一下子活跃起来。
讲解及引导:使学生的注意力转移到游戏程序的实现。提示游戏分为几个步骤(启动,昆虫的显示和隐藏,处理昆虫点击事件,计分),运用的关键技术,并提出思考的要求。例如,提示昆虫的显示与隐藏与计时器的关系,使学生心领神会,实现之后兴奋的心情溢于言表。
编程实践:
定义全局变量mVis和mScore,分别表示可见昆虫图片的索引和得分。(设计问题:为什么有些同学的昆虫总是在同一个地方显示?答:没有定义全局变量)
Dim mVis As Integer
Dim mScore As Long
游戏开始后,通过随机函数指定要显示的昆虫图片,从而确定昆虫出现的位置。Rnd函数随机产生0~1的数值,Int函数的目的是取得整数值作为图片的索引。
Private Sub Form_Load()
mVis = Int(9 * Rnd)
End Sub
游戏进行过程中,隐藏当前昆虫,随机确定要显示的昆虫图片。(设计问题:为什么昆虫图片能在计时器过程中实现显示和隐藏?答:通过公共变量mVis的随机变化)
Private Sub Timer1_Timer()
Image1(mVis).Visible = False
mVis = Int(9 * Rnd)
With Image1(mVis)
.Picture = imgLive.Picture
.Visible = True
End With
End Sub
击中显示的昆虫图片,变换昆虫图片,同时显示当前得分。(设计问题:如何获取昆虫图片的索引?答:通过Index参数)
Private Sub Image1_Click(Index As Integer)
Image1(Index).Picture = imgDead.Picture
mScore = mScore + 10
lblScore = "得分:" & mScore
End Sub
集体测试:把学生的程序集中,分组集中测试,填写程序测试报告表。
教学反馈:学生反映完成程序后,觉得代码量并不大,控件数组的应用具有很强的灵活性。最大的收获是编程很有乐趣,非常有成就感。其实,编程的难度并不是很大,以往没有掌握好只是因为没有开动脑筋。显然,通过小游戏的开发,学生没有平时编程产生的挫折感,有“开窍”的感觉。
教学扩展:游戏案例的功能还可以拓展,例如增加声音效果,设置难度级别,保存积分等。本人在教学中提出版本开发的构思,让学生在课内课余进一步完善程序的功能,将游戏案例法的教学环境扩展到课余时间。
五.游戏案例法实施后的反思尽管游戏案例教学的开展提高了学生学习的兴趣,发挥了学生的学习主动性,但游戏程序的开发需要一定的灵活性,难点较多,教师在教学过程中要不断地给予引导和提示,可以说,教师的教学负担并没得到缓解。另外,40分钟的课堂时间,使得案例相对局部,弱化了创造性意识的唤醒和激发。实际教学过程中,教师可以准备好案例的半成品,学生把游戏的功能“填”进去,最终完成一个完整的作品,这样最大的好处是培养学生阅读程序的能力,领悟程序编写的思路,形成良好的编程习惯。游戏案例法是提高程序设计课堂教学效能的一种有效手段,游戏案例的设计宜精简、有趣、实用,难度大、耗时多的案例有时会起到反作用。教师在做教学计划时要合理编排,把游戏案例法穿插在教学计划中,充分发挥游戏案例的作用,使学生变成“编程迷”。
六、结束语实践探索证明,运用游戏作为案例,能充分调动了学生学习的积极性和主动性,提高学生的注意力,活跃课堂气氛,教学质量也有相应的提高。游戏案例法是案例教学法的延伸,是教学实践的一种局部的创新,也是教师在新教学理念改革的前提下,确立以学生为中心,以学生主体实践为主,以培养学生智力素质、创新精神和创新能力为基本价值取向的一个有效手段。案例教学法能促进教学相长,在学生的整体积极性得到提高的同时,突出教师教学实践的亮点,使教师在教学中获得充分的满足感,从而使程序教学的效能得到稳步提升。
参考文献[1]修宏洪.案例教学法的运用探讨.《福建电脑》 2011年第1期
[2]贺忠. 游戏思想在程序设计语言课程教学中的应用.《计算机教育》 2009年第13期
[3]肖红玉,孙玮,黄静.游戏化学习在程序设计课程实验教学中的探讨与实践.《价值工程》2011年第01期
2/2 首页 上一页 1 2