基于ARCS动机理论的高中Python项目式教学实践
2023-12-21张憧吉林省长春汽车经济技术开发区第六中学
张憧 吉林省长春汽车经济技术开发区第六中学
《普通高中信息技术课程标准(2017年版)》强调了学生计算思维培养的重要性,同时,明确提出:“课程倡导基于项目的学习方式,将知识建构、技能培养与思维发展融入到运用数字化工具解决问题和完成任务的过程中。”[1]因此,高中信息技术教学中项目式教学成了教学实践的热点。
而Python作为一门解释型编程语言,简单易学,有较强的兼容性和实用性,且对学生思维和能力的培养作用较为显著,具备较强的教学价值。高中Python项目式教学能让学生在充分参与Python编程实践的过程中发现问题、分析问题、解决问题、评价问题,最大限度地激发学生的学习热情,引导并提升学生对Python编程知识的探究能力。因此,笔者基于ARCS动机理论设计了高中Python项目式教学流程并进行了教学实践。
●高中Python项目式教学实践存在的问题
1.项目主题不合理,不能激发学生主动学习积极性
很多信息技术教师在设置项目主题时照搬教材中提供的案例,没有根据教学内容进行灵活处理和改造。例如,有些高中信息技术教材提供的案例多是通过为一些典型的数学问题进行编程,来对语法和算法进行讲解,与学生实际生活脱节较为严重,学生并不能够认识到Python编程学习的潜在价值与意义。
2.项目过程偏灌输,不能留给学生自主探究空间
项目式教学是由学生经历完整的问题解决过程,让学生在使用Python编程知识解决真实世界问题的过程中获得满足感和成就感。但很多Python项目式教学没有留给学生自主探究空间,教师掌控项目学习全过程,学生在教师安排下看似完成了项目,却失去了学习的自主权。
3.项目评价不充分,不给学生充分的展示交流机会
很多Python项目式教学将“作品”简化为“作业”。在教学中,教师只关注学生作业的提交而不是作品的呈现,学生主体地位被忽视,同时对知识和技能的掌握也停留于表层,没有对学生的学习和发展起到作用。
●基于ARCS动机理论的高中Python编程项目式教学流程
1.ARCS动机理论
ARCS学习动机理论是由美国佛罗里达州立大学教授凯勒(John M. Keller)于1984年提出的,所谓ARCS,即引起注意(Attention)、切身相关(Re leva nc e)、建立信心(Con fidence)、获得满足(Satisfaction)四个英文单词首字母的缩写,如图1所示。[2]凯勒认为,ARCS学习动机理论模型能够兼顾学生内在因素(如个人期望、能力与认知价值等),及外在教学环境因素(如教学设计与管理等)。教师的教学设计与管理会影响学生努力的程度;教师的教学设计如果能够激发与维持学生的需求和期望,那么学生的努力程度就会提升,并影响学生的行为表现,而学生的学习行为又会反过来影响学生的学习动机。
图1 ARCS学习动机理论
2.高中Python编程项目式教学流程
传统的高中Python编程项目式教学对学生的学习动机关注较少,而若无法引起学习兴趣或动机,则学习效果就会大大降低。因此,笔者设计了基于ARCS动机理论的Python项目式教学流程,如图2所示。
图2 高中Python编程项目式教学流程
●基于ARCS动机模型的Python项目式教学实践案例
基于ARCS动机理论的高中Python项目式教学流程,笔者选择粤教版高中信息技术必修一《数据与计算》中的“4.3.2 if...elif...else语句的应用”为案例进行项目式教学实践。
1.教学前期分析,设计完整项目
在学习“4.3.2 if...elif...else语句的应用”一课前,学生已经掌握了if条件单分支和if...else条件双分支结构,本项目中学生将继续深化学习 if...elif...else条件多分支结构。在教学实践中,学生将通过编写程序来应对各种情况,提升问题解决的技能,并在以后的编程实践中灵活应用所学知识。通过多分支结构和嵌套使用的学习,学生将逐渐形成设计和实现复杂程序逻辑的能力。
2.联系真实问题,确定项目主题
当学生使用Python编程来解决生活中的真实问题时,他们对Python的学习兴趣和学习动机会更强,对算法的理解也会更加深入,这符合ARCS学习动机理论的“切身相关”原则。
在本案例中,教材给出的问题情境是“到某购物网站购买三种笔记本作为奖品和纪念品”,这个问题情境没有与当前高中生日常生活经验联系起来,需要教师改造和更换。在项目式教学实践中,笔者设置了一个来源于生活的真实情境:小明要给他在不同城市的三位朋友各寄一个包裹。他该付多少快递费?三笔快递费都一样吗?如果不一样,快递费的收取和哪些因素有关?寄快递是高中生日常生活中常进行的行为,因此,围绕真实生活问题确定项目主题能够很好地激发学生学习的积极性和主动性,唤起他们学习Python知识的欲望。
3.围绕核心问题,制订项目方案
在有了学生感兴趣的项目主题后,就要把项目主题细化为具体问题。学生通过小组思考、讨论,得出了影响快递费收取的主要因素:一是包裹的重量;二是目的地。教师进一步提问:能否将这两个影响因素分条件进行讨论?学生合作讨论得出结果。解决方案①:如果包裹的重量小于等于1kg,不论目的地在哪里,运费都是10元。解决方案②:如果包裹的重量在1kg到5kg之间(不含1kg),根据目的地不同,分为同城和其他城市两种情况。同城运费为12元,其他城市的运费为每公斤4元。解决方案③:如果包裹的重量超过5kg(不含5kg),同样根据目的地不同,分为同城和其他城市两种情况。同城运费为每公斤6元,其他城市的运费为每公斤8元。通过将复杂的核心问题进行分条件讨论,不仅能够深入分析问题,更能够培养学生的计算思维和问题解决能力。
4.多元项目支架,经历问题解决
在项目式教学实施过程中,教师要提供各种各样的多元项目支架,让学生完整地经历问题解决全过程。同时,在绘制流程图的过程中,教师观察每个小组合作的情况,对遇到问题的小组给予及时的指导。在学生绘制完成之后,教师选择两个小组进行全班展示。
同时,在项目式教学实践中,教师适当地与学生互动,有助于学生专注于课堂。例如,教师出示典型错误范例,让学生在编写程序时不出现低级错误;学生运行错误代码,并能正确指出问题所在,有助于学生增强自信心。
5.成果展示交流,达成素养提升
在学习过程中,每个小组都展示了自己的学习成果。他们分享了小组的问题解决思路、代码的编写过程以及运行结果等方面的内容。这种思维方式能够帮助学生更好地分析和解决问题,并培养他们的计算思维能力。
●教学实践效果与反思
经过了一段时间的“4.3.2 if...elif...else语句的应用”教学案例实践,学生学习Python的意愿和参与动机得到极大激发,并且能够高质量地形成项目成果。
1.提供适当的介入与引导支持学生参与动机
在Python编程项目式教学实践中,学生带着浓厚的兴趣进入了项目。但随着项目难度逐渐增加,部分编程能力不佳的学生,就会慢慢丧失学习兴趣,逐渐降低学习动机,在遭遇困难后容易自我放弃。因此,在Python编程项目式教学过程中,教师需要适时介入并提供引导,帮助学生能够始终保持强烈学习动机,进行持续有效的学习。
2.利用同伴互助提升不同层次学生学习动机
教师可以选择学业成绩较优秀的学生担任组长,挑选不同层次学生进行异质分组。同伴互助能够有效地提升不同层次学生的学习动机,让他们在异质合作中各自获得满足感。
3.帮助学生专注在真实情境中进行学习
在Python编程学习中,由于所学习的内容具有新颖性和复杂性,并且学生有机会在真实情境中遇到各种意外情况,所以,学生在综合解决各种复杂问题过程中能保持强烈的学习动机。因此,Python编程项目式教学活动设计要以有趣的编程任务吸引学生投入到学习中,再引导学生在项目中学习编程算法和程序设计知识,加深学生对编程的理解。