王猛 乔芃喆
摘要:探究式教学的整个实施过程可以划分为提问、讨论、演示和实验这四个阶段。结合《C语言程序设计》课程,探究各个阶段的课堂实践,分析相应的实施要点,并给出实例。在对多个应用型本科专业的教学中实施探究式教学,取得良好的示范效果和推广价值。
关键词:探究式教学;程序设计;情境创设
中图分类号:G642 文献标识码:A
文章编号:1009-3044(2019)17-0168-02
开放科学(资源服务)标识码(OSID):
开展探究式教学主要有四个阶段:探究性提问、探究性讨论、探究性演示和探究性实验,这四个阶段构成了完整的探究式教学过程。探究式教学一般情况下由探究性提问开始,然后学生们进行探究性讨论,进一步教师引领探究性演示的过程,最后学生开展探究性实验并验证结论;也有可能从探究性实验开始,在实验中发现问题,进一步引导学生展开探究性讨论分析问题,最后由老师通过演示验证同学们的分析结论并给出问题的总结。总而言之,在实际的教学过程中,先进行哪个阶段后进行那个阶段没有统一的要求,教师应该根据学习内容和学生反馈灵活应对,这样才能达到较好的效果[1]。
1 探究性提问
探究性提问是指能够激发学生主动性探索的提问。传统教学中,教师提问的问题大多是要求学生记忆书本知识内容,很少涉及学生对课本知识点的思考与延伸,更不具有探究性。探究式教学中,程序设计尽量引导学生发散性思维,激发学生多种潜力,不仅仅局限于课本知识点。
1.1探究性提问的类型
(1)发散式提问
发散式提问是指可以有多种答案的提问,再提问的过程中引导学生深入思考,通过解决“如何”和“为何”,推动学生进行自主推理研判。例如:查找问题,有线性查找、二分查找等方法;排序问题,有选择排序、交换排序、冒泡排序等方法;求阶乘问题,有递归和非递归方法。
(2)假设性提问
假设性提问引导学生去思考,假设条件的细微差别会影响结果。使学生发挥自己的创造力,最大限度地去推测答案。这种方式一方面激发学生的创新思维,防止思维僵化,发挥学生的想象力;另一方面也加深对现有知识的思考。例如:标准输入输出问题中不同的数据类型所使用的表示符号是有所区别的,这一点很容易记混。整型对应的是“%d”,那么浮点型呢,字符型呢?
(3)提示性提问
教师要给学生指出探究大致方向,提点学生探究从何入手,引导学生探究活动,这些都体现在教师提出的探究问题,即提示性提问。探究式教学的一大特征就是学生自主解决问题,教师发挥引导作用,教师决不能因为时间紧张或者学生能力有限,就自己回答问题,即使偶尔一次出现此类情况,也会造成学生的依赖性,难以养成独立思考的习惯,探究式教学就会失败,所以教师一定要通过提示性问题来引导学生。例如:在使用for循环时,for语句后面小括号里的内容往往会让学生困惑,不知道怎么去写,这时教师可以提示学生小括号里包含三段,用两个逗号隔开,第一段用来初始化,第二段表示执行条件,第三段步进表示变化,并进一步结合题目要求提问学生具体的代码写法。
1.2实施要求和注意点
(1)面向全体学生
探究式提问的对象是全体学生,这不同于传统教学中“鞭打快牛”式的提问。传统教学一般都是重点提问愿意做达的举手学生或者点名提问回答问题,这些学生往往成绩较好,弊端是这种方式不易调动全体学生的积极性,往往造成强制回答的刻板印象。程序设计课程的探究式教学中,教师要让尽量多的学生参与答题,引导学生积极探究。
(2)问在有疑之处
探究式教学时教师答疑解惑要关注两种情况,一种是学生自己提出疑问,另一种是学生并未意识到有疑问,其实存在疑惑。对于前者,教师要引导学生积极提问,大胆假设、推理和论证;对于后者,教师要引起重视,可以在课堂上给予明确指出,也可以引导学生自己调试,从中发现问题,积极探究。
(3)问题要具有序列性
探究式问题的提出,要以教学为目标,分层次,逐渐递进,逐步深入。要体现问题的序列性,比如能利用现有知识的回忆性提问,启发学生对未知的疑问,促使学生假设、推理、编程、验证等行为的问题。这种提问要根据学生情况,由浅入深,逐步探究[2]。
2 探究性讨论
传统教学中,教师讲,学生听,学生默认的接受教师教授以及书本知识。但是对于其他同学提出的与自己观点不同的见解,学生很容易提出质疑,并想办法去证实自身观点的正确性。因此,由两名或多名学生一起讨论对某个问题的观点或看法,通过分享和批判相结合,逐渐将问题明晰化,加深对问题的认识和理解,分析问题,解决问题。通过多人讨论,可以开阔思路,克服故步自封,解决单个学生很难解决的问题。学生通过探究性讨论,体验了探究的发展性和合作性,为更多人提供了共同分享的可能性,突破了学生个人思考的局限。
2.1探究性讨论的类型
(1)對算法的讨论
算法是程序设计的核心,初学程序设计的学生对程序算法掌握较少,通过算法讨论,学生会逐渐掌握算法设计方法,首先应该思考什么,每一次应该注意什么,防止“走弯路”“绕远路”“走死路”。通过讨论,加强合作,充分展现每个学生的个人智慧,增强自信,锻炼合作性。例如:最大公约数和最小公倍数问题,需要借助初等数学中总结出的现有的计算方法;数列问题,需要归纳数列中前后项变化的规律;鸡兔同笼问题,需要借助方程组求解。
(2)概括性的讨论
学生边学习边回忆、总结、概括、思考,对所学知识进行反复消化,即概括性讨论。概括性讨论可以在邻桌同学间展开,在讲解完一个知识点之后或课前进行。教师备课时要准备讨论内容,在讨论时可以根据当时状况灵活运用,最大限度地调动学生的积极性参与进来。例如:在使用循环求解的过程中,一个最直接的问题是for循环和while循环哪一个更适合题干?通过对多个类似题目的讨论,可以得出选择不同语句的依据,即循环的时候看循环次数是否确定来决定,确定循环次说的情况下,一般使用for语句,而不确定循环次说的情况下,一般使用while语句。