在任务驱动与自主探究学习中培养计算思维的研究

2019-01-28 11:25高燕
中国信息技术教育 2019年2期
关键词:Python语言计算思维任务驱动

高燕

摘要:本文是关于计算思维培养的一个教学研究案例,该教学案例凝聚了作者在教学中对学生计算思维培养的思考与实践体会,希望能对在进行计算思维培养的教学研究实践的广大高中信息技术一线教师有所启发与帮助。

关键词:计算思维;Python语言;任务驱动;自主探究

中图分类号:G434 文献标识码:A 论文编号:1674-2117(2019)02-0054-03

● 研究背景

1.计算思维与高中信息技术课程

随着信息技术的高速发展,高中信息技术课程迎来新一轮的改革。“计算思维”的提出为寻觅改革思路的高中信息技术课程打开了一扇希望之门。计算思维是曾任美国卡内基·梅隆大学计算机科学系主任的周以真(Jeannette M. Wing)[1]于2006年3月提出的。周教授认为:计算思维是运用计算机科学的基础概念进行问题求解、系统设计,以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。

2011年,国际教育技术协会(ISTE)和计算机科学教师协会(CSTA)对计算思维这一概念进行了进一步的阐释,并给出了一个操作性的定义,指出计算思维是一个用来解决问题的过程,包括(但不限于)以下步骤:(1)制订问题,并能够利用计算机和其他工具来帮助解决该问题;(2)逻辑化地组织和分析数据;(3)通过抽象(如模型、仿真等)再现数据;(4)能通过算法思想(一系列有序的步骤)来支持自动化解决方案;(5)识别、分析、实施可能的解决方案,同时结合上述步骤和资源,找到最有效的解决方案;(6)将该问题的解决过程推广并迁移到更广泛的问题中。[2]

2.Python语言与中小学信息技术课程

Python是一种面向对象的解释型计算机程序设计语言,目前已经成为继Java、C++之后的第三大语言。相比C++或Java,Python是一门非常具有人文情怀的编程语言,简单易学,语法优雅,适合新手入门使用。Python语言课程化也将成为中小学生学习的一种趋势。未来将是大数据和人工智能的时代,面对将会出现的大量数据处理,Python有着得天独厚的优势。未来是人工智能的时代,更是Python的时代,孩子要想在未来拥有基本的编程技能,Python是其必须掌握的语言。

在这样的大趋势下,高中信息技术教材也将变成以编程为主的全新教材。信息技术教师也开始着手学习Python语言。以下是笔者在南京市信息技术教研活动中开设的一堂Python程序设计研究课——奇妙的绘图教学设计和教学反思。

● 基于计算思维培养的教学设计

“教学设计需要做的第一件事就是前期分析,第二件事是根据前期分析得出的学习需求写出教学目标,第三件事是设计教学策略。”[5]笔者这堂课的教学设计从以下两点进行定位与设计。

1.从学情中定位教学设计

对现在的高中学生来说Python是一门全新的程序设计语言。部分高中学生在小学阶段学习过Logo语言,在初中阶段学习过VB语言。Python是简单易学的面向对象程序设计语言,第一节Python程序设计课,笔者认为以学生原有的程序基础,只要稍加引导就可以入门。

在Python中从哪里着手带学生入门呢?笔者前期一直在学习Python,在学习的过程中发现Python中turtle库即绘图模块恰是学生学习Python的最佳“入”点,另外海龟作图最早源自Logo语言,学生小学阶段有过Logo语言的学习经历,所以笔者认为从绘图出发学习Python更易点燃学生对Python的学习兴趣。基于以上的学情分析,笔者将第一節Python教学设计确定为“从奇妙的绘图开始初识Python”。

在新课导入环节,笔者先让学生观看一个利用Python语言编写的绘图小程序(如图1)。该绘图程序可根据选项绘制出正多边形、多个圆形、螺旋形状等图形,以此唤起学生在Logo语言中海龟作图的学习经历,然后向学生简单介绍Python语言的由来及当下应用领域,激发学生对Python的学习欲望,引出本节课的学习内容——从海龟作图初识Python语言。

2.任务驱动与自主探究并行的教学策略

在中小学的课堂教学中,任务驱动与自主探究一直是非常受一线教师欢迎的教学方法。对于这节课的知识内容,高中学生完全可以在教师的引导与启发下自学完成。如何有效地推动学生在课上自主探究?笔者采用任务驱动与自主探究并行的教学方法,帮助学生学习新知识。

首先,“牛刀小试”环节,要求学生运用英语知识读一读如图2所示的三行程序,并思考3个问题:①海龟是如何出现的?②海龟执行了什么动作?③程序的运行结果是什么?学生可以相互讨论,大胆地说出自己的想法。然后教师向学生演示每行语句的执行结果,以验证学生的想法,加深学生对Python中turtle模块的引入初始化语句的理解。

接下来进入挑战任务环节,在每一个挑战任务环节中要求学生自主学习学案中提供的学习帮助手册,自主探究尝试完成每一个挑战任务。

挑战任务1:验证想法。

自主探究:绘制正方形。

鼓励学生:尝试正五边形、正六边形的绘制。

挑战任务2:简化程序。

启发学生:在顺序结构的绘制正方形程序中,运用什么程序结构更简便?

自主探究:运用for语句编写一个围绕画布中心绘制12个圆的图案。

挑战任务3:修改程序。

启发学生:观察螺旋图中海龟的运行轨迹,是什么值发生着改变?

自主探究:修改绘制正方形的程序实现螺旋效果,可自由创作。

这节程序设计课,笔者对挑战任务的设计环环相扣,任务难度逐层递进,学生在每一个挑战任务的自主探究过程中只要稍加努力地“跳一跳”,就能独立完成,部分能力强的学生,在挑战任务完成的基础上自学“学习帮助手册”中的函数与方法,进一步创新。整节课学习氛围浓郁,学生整体参与度高。在整个教学过程中教师并没有向学生演示如何写Python代码,学生都是在教师的引导与自主探究中完成学习任务。

● 对培养学生计算思维的思考

1.在任务驱动中对学生计算思维的培养

Python只是培养学生计算思维的一个平台。笔者设计的一系列环环相扣的挑战任务都是立足于学生计算思维的培养。例如,从开始“牛刀小试”环节让学生读三行程序语句,到教师亲自验证每一条程序语句执行结果,其目的是先让学生理解Python是如何实现绘图的。学生完全理解了这三行重要语句的使用后,就能很快燃起绘图的兴趣,激发思维,尝试使用绘图中各种方法进行作图。当教师让学生绘制正方形时,学生能很快上手,甚至能很快绘制出各种各样的正多边形。学生在用程序绘制各种正多边形的过程中,会很自然地发现不断重复的语句,凭借原有的程序学习经验,他们会很自然地联想到用循环语句来简化程序;而此时教师的作用就是把Python中适合解决这类问题的for循环语句教给学生,告诉学生for循环语句使用的方法及格式使用的注意事项。学生会很积极地尝试使用for循环语句改写程序,在改写程序中掌握for循环语句的结构和语法格式,然后再去挑战新的任务。

2.在自主探究中培养学生的计算思维

课堂教学过程中笔者没有向学生演示如何写Python代码,整个教学过程中学生都是在笔者的启发教学下自主探究完成环环相扣的挑战任务。例如,在绘制螺旋图的挑战任务中,笔者让学生观察三幅螺旋图,启发学生观察螺旋图中海龟的运行轨迹,是什么值发生着改变,学生在自主探究中会发现是海龟直行的步长及转角的度数影响了它的运行轨迹;这时笔者再将绘制正方形的for循环语句提出让学生修改,学生在自主探究中会很快想到将循环变量x的值作为海龟直行的步长,即forward(x)。在这样的启发教学和学生自主探究学习中,教师一步一步引导,学生在自主探究中解决一个一个环环相扣的挑战任务,逐渐提升解决问题的能力,这种提升解决问题的能力的过程就是计算思维培养的过程。在教学过程中笔者如果发现学生写的程序有错,会将程序错误的问题抛给全班学生,让全班学生一起纠错,在这样的学习氛围下,学生对知识的理解会更加深刻。

● 总结

培养学生计算思维已成为新课改下高中信息技术课程的核心素养。对学生计算思维的培养需要教师在教学实践中不断摸索、研究。未来是大数据和人工智能的时代,当下的教育工作者们要及时转变思想,深刻地认识到我们培养的不是信息技术的应用者,而是具有计算思维的跨时代的新人。

参考文献:

[1]Jeannette M. Wing.Computational Thinking[J].Communications of the ACM,2006,49(3):33-35.

[2]郭守超,周睿,邓常梅,等.基于App Inventor和计算思维的信息技术课堂教学研究[J].中国电化教育,2014(3):91-96.

[3]朱亚宗.论计算思维——计算思维的科学定位、基本原理及创新路径[J].计算机科学,2009(4):53-55+93.

[4]李艺,钟柏昌.基础教育信息技术课程标准:起点、内容与实施[J].中国电化教育,2012(10):23-27.

[5]李冬梅.信息技术教学的关键环节之一——教学设计[J].中小学信息技術教育,2009(3):19-21.

[6]李艺.信息技术课程的教学策略与案例[M].北京:高等教育出版社,2006.

猜你喜欢
Python语言计算思维任务驱动
基于Python语言和支持向量机的字符验证码识别
论Python程序设计语言
基于Python语言的面向对象课程实践教学探讨
程序设计课程中计算思维和应用能力培养问题研究
基于Android的Python语言英汉维电子词典设计与实现
民族高校C语言程序设计课程教学改革的研究
任务驱动式教学模式在电子技术课程中的应用
算法的案例教学探析
任务驱动教学法在《网络应用服务管理》教学中的应用
浅谈艺术专业学生计算思维能力的培养