当前初中编程教学中的问题与解决对策研究
2021-05-30张翼
张翼
摘要:随着社会的发展,信息技术对人类生活的方方面面都产生了重大影响,人工智能、大数据等成为当今时代的热点话题,为了顺应时代的发展,我们已经在初中阶段开设编程教育,培养学生的信息意识,提升学生的综合能力。但初中阶段的编程教育由于开设时间还处于初级阶段,目前还存在很多教学问题。本文分析了当前初中编程教学中存在的问题,然后给出适当的解决对策,希望可以为编程教育提供一点参考。
关键词:编程教育;教学问题;解决对策
中图分类号:G434 文献标识码:A 论文编号:1674-2117(2021)S2-0077-03
2017年颁布的《新一代人工智能发展规划》中提出开展“全民智能教育”,同时开始逐渐在中小学阶段开设人工智能相关教学内容,进一步推广编程教育,编程教育对人工智能教育培养目标的实现具有重大意义。为了服务国家“互联网+”、大数据、人工智能等重大战略,顺应时代的发展,编程教育走入了初中课堂。但由于开设时间较短,编程教育目前还处在实施的初级阶段,没有很多的经验可以借鉴,教学中存在很多问题,这对编程教育的实施效果产生了一定的影响,因此找到合适的教学策略意义重大。
当前初中编程教学中的问题
1. 教学内容不能激发学生的兴趣
初中编程教学主要采用的是Python编程,编程中要书写很多英语代码和语法规则,学生容易书写错误,这就增加了课程的难度,降低了学生对课程的兴趣度。另外,教材中有些案例比较偏离学生生活,而编程知识又较为抽象,学习编程知识特别注重要具有逻辑思维能力,有些学生逻辑思维能力差,跟不上课堂,因此觉得课程难度大,对课程逐渐失去兴趣。
2.教学模式单一,课程枯燥
针对编程教学,很多老师的教学模式,依然是先讲授要实现的效果,然后分析实现目标效果的方法,之后再演示实现目标效果的程序书写,最后学生依照老师的演示完成程序的书写。学生被动地听老师对问题的分析,然后被动地按照老师的演示把程序书写完成。在这样的教学模式下,学生没有自己分析问题,没有产生对编程方法的需求,思维没有得到锻炼,同时所有学生编写的代码都一样,发散思维没有得到培养,因此学生觉得课程枯燥。
3.教学目标及理念错位
编程是一门对能力要求很高的课程,现今很多课堂的教学目标是传授编程知识与技能,这种以知识为本位的思想,导致教师过分关注学生学了多少编程内容、知识掌握度怎么样等,忽略了能力的培养,学生会觉得编程知识点很多很难,编写一个完整的代码很难,因此很难找到成就感。而编程教育的真正目的不是要让每个学生都掌握编程的所有知识,未来都成为程序员或者从事与IT相关的职业,而是要培养和训练学生的思维,培养学生分析问题、解决问题的能力,提高学生的信息素养。因此,我们的理念不应该是学生学的编程知识越多越好,而应该是学生思维与能力的培养目标是否达成。
4.课程评价维度单一
由于受知识本位观念的影响,现今的初中编程课堂的评价标准依然注重学生代码书写的完成情况,按照老师要求完成代码书写的学生就是课堂表现好的学生,编程知识学得多学得好的就是表现好的学生,反之,就是表现不好的学生,这种仅仅以知识学习结果为导向的评价方式极其单一,没有考虑学生综合素质的发展。
解决策略
如何更好地实施初中阶段的编程教育,使编程教育达到良好的效果?笔者认为可以试着采取以下措施。
1.明确教育理念
初中的编程教学是以体验、简单应用为目标的,而不是要让每个学生都具备系统开发的能力。教师要站在学生的角度思考问题,要考虑他们的认知和接受度,因此课堂教学要把握好课程难度及教学容量。对于部分有天赋的学生可以进行适当拓展延伸,大部分学生只要能完成基础任务即可。
同时教师在教学中要关注学生能力的提升,把学生的思维培养、解决问题能力的培养等作为一个重要任务,而不仅仅是关注课程知识的达成度。为了使教师拥有正确的编程课程理念,学校或相关部门可以适当组织相关的培训,提升教师的教育意识,还可以展示典型课堂案例,从课堂设计与实施方面具体告诉教师们如何培养学生思维能力、问题解决能力等。
2.激发学生学习兴趣
学生课堂兴趣不足的原因有两个:一是学生用英文代码写程序,总是出现单词书写及编程的一些语法规则错误;二是编程内容比较偏离他们生活,且知识较抽象,理解有一定的难度,对逻辑思维能力有一定的要求。
在教学中,教师无法帮助每一个学生检查书写与语法错误,但是可以采取恰当的教学策略,如对班级进行分组,通过组内及组间互相检查降低这种错误情况,同时帮别人检查错误也可以加深自身的记忆。针对教学内容偏离生活的问题,教学不一定要按照教材给的案例来讲,可以自主设计选择一些贴近学生生活实际的案例,把生活中的问题用代码写出来,这样可以激发学生的探索欲。例如,在讲if双分支结构的时候,可以结合目前疫情测体温的生活案例,提问学生:当进入学校的时候,校门口的设备是如何测量你的体温,然后判断你能否进校的呢?从而得出当体温高于37.3时,禁止入校,否则可以进校的逻辑。学生根据逻辑会探索如何用程序实现這种效果。因此这就实现了利用生活案例激发学生的探索欲与学习兴趣,从而提高课堂效果。针对编程知识较抽象的问题,可采用类比法,把知识类比成生活中的事情,用通俗易懂的方式让学生理解。例如,在讲编程中的递归时,教师可以把递归类比成老和尚讲故事的案例,学生通过老和尚讲“从前有座山,山里有座庙,庙里有个老和尚在给小和尚讲故事……”不停循环的过程明白递归是怎么一回事。通过编程与实际生活的联系,让学生感受到学习编程的乐趣。
3.转变教学策略
在传统模式下,教师按照教材进行讲授,学生听讲,然后按照老师的程序完成自己程序,这种方法比较枯燥,教学效果并不好,时间久了,会让学生抵触这门课程,感觉是为了学而学。针对这种情况,要让教学从“灌输式”走向“合作互动式”,教师不应该是课堂的主演,而应该是组织者和策划者,要建立与学生平等的关系。教师要善于倾听学生的想法,从学生的实际出发,引导学生产生对课程编程的需求。除了师生之间要多互动外,生生之间也要多交流,如小组协作、组间互相答疑解惑等,都能激发学生的课堂热情,发散学生的思维。
此外,对于教材处理,教师不能完全按照教材讲,这样会使课程无趣,为了让课堂变得灵活不呆板,教师要合理处理教材,把教材当资源,而非教案,使用教材进行教学设计需要首先明确教材的意图,与适当的教育观念、方法相结合,根据自身实际来组织教学,不能盲目地用教材。
4.全面多维度的评价
为了提升学生的综合能力,评价要从以知识学习效果为导向的结果性评价转向过程性评价。评价要从学生发散思维能力、问题分析与解决能力、协作探索能力、信息素养等方面进行,而不仅仅是知识学习达成情况。这样全面的评价会引导学生课堂上除了关注自己有没有完成代码书写,还会关注自身学习与思考的过程,同时不会因为自己没有写出程序就觉得自己很差,会使学生在编程课堂上更容易找到成就感与快乐。
此外,为了评价的客观性,评价可以从多角度出发。例如,可从教师角度、学生自身角度和小组成员角度,采用师评、自评、他评的方式对学生进行更加细致的评价。学生通过学习过程中自评、他评和师评更清晰地了解自己的学习情况,从而更好地做出调整,提高学习效果。这样全面多维度的评价更有利于学生综合素质的提升。
编程学习是学生适应现今时代的必然要求,同时对人工智能战略目标的实现具有重大意义,因此,作为信息技术教师,我们需要采取有效的策略开展编程教育,促进初中编程教育不断发展。
参考文献:
[1]张华兰.高中编程课程教学中的常见问题和应对策略[J].科学咨询(教育科研),2020(10):220.
[2]徐佳艳,张银荣,杨刚.中小学编程教育的现实困境与策略选择[J].中国信息技术教育,2021(13):90-93.
[3]钟启泉.从“教的专家”走向“学的专家”[N].中国教师报,2019-07-10(005).
[4]孙立会.聚焦思维素养的儿童编程教育:概念、理路与目标[J].中国电化教育,2019(07):22-30.