星期三, 三月 18, 2009

关于技术类课程教学方法的建议

今天从学生了解到,对技术,特别是编程了课程,同学们希望老师能从实际的项目开始,讲解如何实现?而不是从语法开始讲。这样,同学们才知道如何应用。任课教师对此可能有不同的看法,任课教师常常认为,这样是急功近利,只有扎实的语法基础,才能编好程序 。同学则认为,如果这样教学,就会感到不知道学这个东西具体有什么实际意义?语法我们可以看书,书上都有,我们自己会看。我们只希望老师能够告诉我们怎么应用。真是婆说婆有理,公说公有理。

我的意见是:学生是消费者,我们要按照学生认知的角度授课;教师是教育者,应该有自己的原则。在不违反教育原则的基础上,应该首先考虑学生的认知规律。从实际问题出发开始讲授,对大多数同学来说都是比较容易接受的。这就是为什么有经验的老师更受学生欢迎的原因。因为这样的老师上课的时候,比较习惯性地从实际应用出发,再逐渐地剖析实现的语法规则,这完全符合认知规律。

语法很多,我们要教会学生如何看懂语法,在学生没有老师帮助的情况下,他们知道如何查找语法书,如何找到自己需要的语句,如何通过语法说明来使用它等等。这是传授方法,而不是传授知识。

扎实地语法功底是非常必要的。老师的担忧不是空穴来风,是有其道理的。那么如何调和之间的矛盾呢?我们可以通过一个实际问题让学生掌握基本的语法,然后再提出更为深入的实际问题,但不提供解决方法,让学生自己想办法解决涉及到的语法知识和算法。这就让学生为了解决问题而努力学习,而不是为学习而学习。

比如,在网上比较流行的Flash动画里的,物品轮廓电波效果是怎么做出来的?某C2C网站中秋节制作月饼的小flash游戏是怎么做出来的?这些具体同学们熟悉的小东西,是如何弄出来的?我相信很多同学都会感兴趣。这时候老师给他们讲解实现的技巧及设计的语法规则。然后让学生去做,如果他们能够做出来,说明教学有效果。这时候,就要趁胜追击,提出一个更为复杂的flash互动游戏,问问学生,这个游戏应该如何实现呢?很多同学会习惯性地用已经讲过的方法来套,结果发现行不通。这个时候,教师可以提示:这个游戏的实现,需要其他的语法知识来支持。然后,可以引出新的语法,但不做讲解,只是告诉学生用这个语法可以实现这个游戏,你们自己去考虑实现算法。这个可以作为课堂或实验课或者课后的作业。下次课,再抽查学生做的情况,以判断是否需要讲解。

如此反复循环,就可以穷尽所有的教学要点。

以上仅仅是本人的一点想法,还请任课教师斟酌。

作者:黄勇
成都理工大学工程技术学院 管理系 电子商务教研室

淘链接