Alice在java程序设计教学中的应用

2018-01-10 11:56陈强
祖国 2018年22期
关键词:编程教学

陈强

摘要:本文介绍了职业学校中计算机专业学生的特点以及在java程序设计教学中所面临的困难,进而探讨了针对困难的解决方案。然后阐述了Alice三维程序设计仿真平台,在此基础上,尝试将该平台引入到实际课堂教学中,最后,评估了基于该平台的教学效果。

关键词:alice java 编程 教学

一、问题背景

职业学校中计算机专业的学生一般来说学习习惯相对比较差,非常讨厌呆板枯燥的理论知识,热衷于电子游戏。传统的计算机java[1]程序设计课程中课堂教学往往是先解决java各种术语概念和语法规则,不仅枯燥无味,而且晦涩难懂,使很多学生望而生畏,敬而远之,教学效果可想而知。即使部分学生在意志力的驱使下坚持学会了术语和语法规则,到了实际动手写程序阶段,也存在问题:一是已经在语法上花了大把的精力,剩下放在实际动手编程上的精力是有限的;二是这些编程练习仅仅是为了巩固之前学习的讲法,忽视了编程思维、编程思想的培养和训练;三是练习中使用的例子大多是“为了练习而练习”的简单的输入输出,与程序要解决的实际问题关联较少甚至没有关联,不利于学生解决实际问题的能力的培养。这些都与程序设计课程的培养目标是相背离的,程序设计课程变成了程序语法课,学生最终只掌握了java语言的语法,编程思维、编程技能这些应该掌握的核心技能却严重缺乏,更不用说那些被java复杂语法挡在门外的那部分学生了。所以,有必要让java程序设计回归其本源,那就是该课程是技能培养课,不是理论课,最终目标是培养有编程思维和编程思想的java技能的学生,而不是培养出掌握java语法的学生。

二、解决思路

为了解决以上问题,本文认为需要从以下几个方面着手:

(一)必须让java程序设计教学的重心放在编程思维和编程思想的培养和训练上,如今的编程语言非常多,语法各异,但是它们的编程思想是相同的,而编程思维是学生解决实际问题必不可少的。否则,语法觉得再好,也不能很好的用程序设计的思维解决现实中的问题。

(二)必须把教学着重于学生动手能力的培养,仅仅依靠当前书本掌握的知识和技能与现实世界中要解决的问题是不同的,他们中间存在着巨大的鸿沟,如何让学生学以致用,提高解决实际问题的能力,需要在书本与现实中搭建桥梁。

(三)必须让程序设计课富有趣味,让学生获得即时的成就感。学生喜欢电子游戏,就是因为电子游戏不仅有趣,而且能让学生获得成功的满足感和自豪感,如果程序设计课堂教学也能让学生得到这两方面的满足,便能提高学生的学习积极性,使学生的主观能动性得以发挥,学生的主体作用才能真正体现出来。

三、解决方案

我们引入了Alice[2]三维动画仿真平台,它是对现实世界的高度仿真,在书本和现实之间搭建了一座桥梁。能够让学生在有趣的环境中做出类似游戏的作品,同时让学生在平台中先去解决具体问题,培养解决问题的思维和能力,它能把学生完成的作品生成java代码,学生在问题解决后,通过对比代码习得语法规则,事半功倍,水到渠成。

四、Alice简介

Alice是三维虚拟仿真编程环境,由美国卡耐基梅隆大学开发,是专门为了程序设计入门教学而研制的软件,学生可以使用平台提供的工具创建三维动画和游戏。平台以java类的方式提供了大量的三维模型,这些类实例化后组成一个虚拟世界。学生可用拖拽的方式进行虚拟物体的创建,这样就有效避免了初学者创建对象和调用对象方法时常犯的语法错误。同时,学生在平台完成虚拟任务后能马上看到对象(程序)的运行结果是否符合预期,他们通过动画很容易就能理解对应语句和程序结构与对象的行為之间的关系。另外,学生的作品完成后,可以把作品转换成java的原生代码,学生此时已经理解任务的逻辑和算法,对照学习java原生代码是,就非常容易接受和理解。

在课堂教学过程中,学生根据教师布置的任务在平台上可完成动画场景的制作,即时看到自己的作品和运行的反馈,可以获得玩电子游戏时体验到的趣味与成就感。同时,通过平台生成的与作品对应的java原生代码,学生无需记忆复杂的语法规则,只需对比归纳就能掌握语法规则,并且还能看到java语句在实际程序中的使用。这样,学生就可以在轻松有趣的学习氛围中,不但锻炼了自己解决问题的思维和程序设计思维,同时习得了java语法规则。这样做也更符合人的认知规律,即先具体后抽象,降低了学习坡度,化难为易。

五、教学设计

传统的教学设计是先语法后问题,先抽象后具体,不符合当前职业教育人才的培养方案和程序设计课程的培养要求。因此,本文提出先问题后语法、先具体后抽象的教学设计思路。利用Alice三维仿真平台,先让学生完成三维环境的创作,发挥了学生的创造力和自主探究的能动性。学生通过小组探究与讨论,小组间的比赛,使竞争与合作落实到实处,小组成员只有通过紧密的合作,才能在小组间的竞赛中获胜。这阶段的学生争强好胜心强,但他们在竞争中就会发现,人与人之间不是只有竞争,还有合作,竞争促进合作、合作为了更好的竞争,为他们以后走上工作岗位后面对社会的竞争做好准备。

六、教学效果

引入Alice平台,为课堂教学设计提供了更广阔的空间,寓教于乐。学生在新的教学模式下,精神面貌焕然一新,学习兴趣盎然,即使采用传统的上机加理论测评作为评价手段,教学效果亦进步明显,尤其是女生,效果更为突出。后续工作将引入更加多元的评价机制和手段,积累实验数据,对使用新的教学模式前后学生的学习效果作进一步的研究和探讨。

参考文献:

[1]http://www.oracle.com/technetwork/java/javase/overview/index.html

[2]http://www.alice.org/

(作者单位:江苏省相城中等专业学校)

猜你喜欢
编程教学
编程,是一种态度
编程小能手
纺织机上诞生的编程
“自我诊断表”在高中数学教学中的应用
对外汉语教学中“想”和“要”的比较
跨越式跳高的教学绝招