编程教学是一门强调动手、实战的一门学科,尤其以就业、竞赛为导向的教学,体现更为明显,从业这些年把教师与学生之间的一些矛盾问题点总结如下,以帮双方总结和化解
学生:我问老师这个代码为什么错了,老师确不告诉我答案,而是让我自己找,我甚至怀疑老师也不会!
原因:通常情况下,对于学生具体的代码具体错误的,通常是分类型来帮学生解决,如果是语法错误,可短时间看出来的,老师可以根据教学需要可以一针见血的帮学生解决,如果是逻辑问题,即得不到想要的运行结果,如果条件和教学的允许,可以带引学生一起断点调试或逻辑梳理排查错误。但如果代码比较长,或长期帮一个学生解决,不利于这个学生的调试能力的培养,更会产生有问题就问别人的依赖思想,得不到debug过程中百思不得解的磨练提升。因此可能通常情况下,老师会予以方向性的解答让学生自己解决,是正确的,学生要理解并学会依靠自己解决问题。
2.学生:这道题我就想知道我的思路为啥错了,老师却给我讲他的办法?
原因:有一种情况是,同一个问题,学生自己的思路可能也能达到解决问题的目标,但思路非常繁琐和低效,甚至是完全弯路且没有创新价值的方法。老师一旦要解决学生的办法中遇到的问题,需要要先理解学生的这种低效的思维,然后思考这种低效的思维过程中哪个环节出现了问题,无疑是非常不可取甚至没有价值的。因为即便老师花费大量时间帮学生找出问题所在,学生当下的成就感也是这个低效的想法下问题的解决,甚至有可能“助长”接下来学习还按照这种低效的思维解决问题,是不利于学生的,因此最好的办法就是,在学生学习阶段按照常规、主流的思维去引导学生这样思考和解决问题,等过一阶段,学生回过头来思考这个问题就会自己感觉到自己的问题,时间是最好的说明。
3.学生:这个代码老师你直接告诉我哪里错得了,干嘛讲和这个题无关的问题?或者挤牙膏式的一点点讲?
原因:一名优秀的老师的职责不仅仅是传授知识,引导学生的思维,以及更重要的是培养学生的能力。学生在不知道和知道之间。老师需要一步步的引导学生的知识点结网,一点点撞击学生的知识边界,一方面可以确认学生的基础掌握情况从而做出调整,另一方面也是引导学生的思维边界产生突破,虽然慢慢引导和直接说明答案的结果是一样的,但这中间对学生知识点结点成网的布局过程可能是对学生的提升是最大的,这就是老师不直接告诉你答案的原因。
0.0分
9 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复