购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

在问题解决中培养中学生的计算思维

一、问题的提出

(一)信息技术的快速发展越来越深刻地影响着人们的工作和生活,计算思维成为人人必备的能力

随着信息技术的快速发展,数字化和计算化逐渐演变成为现代社会的基本形态特征,计算思维的作用和意义越来越突出,科学家已将计算思维和理论思维、实验思维并列为人类三大科学思维,计算思维正逐渐成为一种基本的思维智慧,受到了科学界的广泛关注。

培养学生的计算思维,是中学生心理发展的需求。计算思维不但可以促进形式思维向辩证思维的转变,而且对辩证思维的形成与发展也有积极的促进作用,中学阶段恰是培养计算思维的重要时间段。

(二)中学信息技术课程是一门与时代发展紧密相关的课程,计算思维教学将成为信息技术教学的核心内容

2017 年版的《普通高中信息技术课程标准》中,将高中信息技术课程性质描述为,普通高中信息技术培训课程是一门旨在提升信息素养,帮助学生掌握信息技术基本知识与技能、增强信息意识、发展计算思维、提高数字化学习与创新能力,树立正确信息社会价值观和责任感的基础课程。

在新课标的引领下,计算思维必将成为中小学信息技术课程的核心教学内容,这也是信息学科内在价值的体现。关于中学生计算思维的培养也应成为中学信息技术教师关注的一个特别重要和迫切的核心研究问题。

(三)中学计算思维的培养研究和实践目前处于起步阶段

目前,中国在中学生计算思维培养的研究及实践处于起步阶段,与计算思维应有的重要地位极不相称。学生的计算思维不能自然形成,必须经历由广大教师进行理论研究及实践探索才能实现。因此,需要我们中学信息技术教师主动探索中学生计算思维培养的策略、特点,在实践中摸索对中学生计算思维培养的规律,从而提高学生的计算思维,使他们在日常的学习和生活中能够使用计算思维方法,运用计算思维的特征来解决实际问题,为他们更好地适应不断变化的信息社会打下良好的基础。

可以说,在今后一个相当长的时期,研究如何对中学生进行计算思维的培养并在教学中进行实践是中学信息技术教师的重要任务。

二、在问题解决中培养中学生的计算思维的可行性和必要性

在问题解决中培养学生的计算思维是中学信息技术课堂教学应该特别重视的核心问题。

问题分析是问题解决的首要条件,这也正是计算思维大显身手之处。在信息活动中能够采用计算机可以处理的方式界定问题、抽象特征、建立结构模型、合理组织数据;通过判断、分析与综合各种信息资源,运用合理的算法形成解决问题的方案;总结利用计算机解决问题的过程与方法,并迁移到与之相关的其他问题解决中。这是计算思维的基本过程,也是问题解决的通用过程,可以说,学生计算思维的形成与问题解决的过程是天然契合的。

在问题解决中培养中学生的计算思维是将计算思维与现实生活相联系的最好途径,也是体现计算思维在现实生活中重要作用的途径之一。

三、在问题解决中培养学生计算思维的策略

(一)重视问题分析与解决是计算思维培养成功与否的关键

中学信息技术的教学内容非常丰富,既包括信息技术基础知识,如计算机系统组成、进制转换、编码等,又包括网络及其应用、程序设计等内容。就这些教学内容而言,程序设计是培养学生计算思维的主要载体。

很长时间以来,无论是在大学还是在中学的程序设计教学中,都存在重视语法教学的现象,基本是从顺序结构、分支结构、循环结构三大结构以及函数等内容讲起,重点学习这些结构的语法知识,而忽视对实际问题的分析与语言的应用。其实,学习语言的目的就应该是解决实际问题,程序设计开始的第一步应该是学习界定问题、分析问题,对实际问题进行合理抽象以使之能利用计算机解决。因此,我们应该充分重视问题分析、分解、抽象的过程,即计算思维的过程。

(二)教学流程设计要适应计算思维的培养

教师应在教学流程设计上体现计算思维的培养,改变以前那种先讲语法知识、再讲如何应用的流程。注重引导学生在解决实际问题的过程中逐渐学会抽象和利用程序语言使解决问题自动化的过程。

表 1 为“珠穆朗玛峰”问题的教学流程。

表1 “珠穆朗玛峰”问题的教学流程

从以上教学流程来看,恰恰与计算思维的过程是一致的,学生在老师的引导下经历了界定问题、抽象特征、建立结构模型、合理组织数据;运用合理的算法形成解决问题的方案;总结利用计算机解决问题的过程与方法,并迁移到与之相关的其他问题解决中这样的计算思维的基本过程。学生经过多轮这种界定问题、分析抽象问题、解决问题、总结提高的迭代过程,计算思维会逐步提高。

(三)设置、发现“好问题”是问题解决的开始,也是培养学生计算思维形成的先决条件

1.好问题要与学生所学知识相关、与学生的计算思维形成相关

老师要善于设置学习问题。比如,我们在学习利用Python画线时,学生学习了如何引入turtle模块,然后学习了如何利用turtle模块画线。接下来我鼓励学生大胆尝试如何画一个正方形,在此基础上如何画多边形,等等。

学生在老师的引导下,一步一步分析问题、解决问题,这些问题都是通过他们自己的分析解决的,学生体会到了解决问题的快乐,在这个过程中潜移默化地对计算思维的抽象、分解等计算思维的核心内容进行了体验。

2.好问题大多是经过研究才能得出结论的问题,而不是直接查询就能得出结论的问题

有一些问题是经过老师讲解学生就知道的问题,如一些程序设计语言的语法问题,经过老师讲解或者学生自己查询就能够找到规则和方法,这样的问题就没必要再深入挖掘。而经过学生探究才能得出结论的问题才是计算思维培养的好问题。

在学习虚拟机器人,由于之前学生学习了机器人前进的语句,所以后面学习到机器人遇到障碍就后退时,他们很容易就想到使马达反转就后退。当学生自己改完程序试验时,出现了特别尴尬的场面,机器人碰到障碍就后退,然后就又前进,好像反复撞墙一样。我把这个问题抛给学生,引导学生自己讨论思考如何修改程序使机器人遇到障碍就后退而不是在那里“撞墙”。

学生们对这个问题特别感兴趣,不一会儿就给出了几种不同的解决方案。有的方案是利用“中断循环”模块,机器人后退时就中断循环。有的方案是把“退出”模块放在循环体外,在循环中加入条件判断,如果碰到障碍不做任何动作,退出循环后再一直后退,这样也能实现机器人碰到障碍后一直后退的效果。还有的方案更有意思,既然后退完了又判断是否遇到障碍,那干脆让后退永远循环,不让再前进了……

这节课出现的问题吸引了学生的注意力,学生乐于钻研、自己得出结论和找到解决办法。这些解决方法的提出基于他们对问题的深入理解和对计算思维中对实际问题的抽象化体验,学生对循环、条件循环、循环中断等的作用有了深切的体会和认识。

3.不放过课堂教学中生成的好问题

除了老师有意设置问题以外,好问题也来源于课堂的生成问题。我们在课堂上遇到的“换座位”问题就属于这类问题。在课上,有一位女生说坐后面看不见前面的白板,提出来想换到前面一点的座位,我赶紧和坐前面的同学们商量:“有谁愿意跟她换一下座位?”只有一位男生响应了一下,随后又反悔了。看来大家都愿意坐前面认真听讲,怎么办呢?我把问题抛给全班同学,这时有同学说:“老师,您做一个类似于点名的程序,点到谁谁跟她换。”我想,何不让学生自己实现这个点名程序?同学做完这个程序后,又针对一些具体问题引导学生实现程序的优化,如只从前两排同学中随机抽取座位怎么办?学生完成后,我又对他他提出能不能再把程序做得更逼真一些,因为学生的座位号是按A1 — A2 — A3…B1 — B2 —B3…排列的,如果把产生的表示列的随机数变成字母表示就好了。在我的提示下,他们查到了将数字转变成字母的函数Chr(),很快实现了这个效果。接下来我在全班面前演示这个程序,很快抽到了要换座位的同学是D1,这个同学也表示同意下节课跟这位女同学换。似乎一切是那么完美,但就在我刚要宣布“换座位”完美收官时,接下来的事情又有了新的变化。

在查看程序代码时发现:其中有这样关键的一句,Text1.Text = Chr(fix(rnd*8)+ 1 + 65)。仔细分析这个语句,我们发现这个程序无论怎样运行,A列都不会抽中,因为产生的随机字母是从B(B的ASCII码是 66)开始的。原来如此,这个大BUG必须得改呀!

接下来再跟学生讨论街头抽奖等活动时,如果想不让你赚钱或者拿走礼物是非常容易做到的,学生对此有了深刻的体会。

从这个问题的一波三折可以看出,课堂上学生出现问题的时候正是我们教学要关注的重点时刻,这个机会稍纵即逝。老师除了具备敏锐的洞察力之外,也要具备对所教知识的熟悉,对学生学习情况的深入了解,对课堂宽松环境的营造以及教学中与学生磨合产生的默契。只有注重解决学生的问题,才能接近解决真问题,学生在这些真问题的解决中,高阶思维能力才能提高。

4.引导学生自己设计小项目并完成这些项目,是计算思维形成的重要途径

在教学中采取完成小项目的教学方式,使学生能够很快学以致用,在提高学生学习兴趣的同时,也锻炼了他们分析问题、抽象表达等计算思维能力。

在学完分支结构后,我引导学生自己设计小项目,并自己分析项目要解决的问题、解决的步骤、用到什么程序结构来实现,学生从他们自身的学习、生活出发,提出了很多实用的项目问题,也利用所学到的知识进行解决。他们围绕一个实际问题的解决,通过分析问题、界定问题,然后在此基础上进行抽象,并利用程序设计语言的相关语句来解决问题,这就是计算思维的过程。

四、在问题解决中培养学生计算思维过程中应该注意的几个问题

1.为学生设置秩序渐进的学习任务

根据教学内容,为学生设置循序渐进的学习任务,这样会增强学生完成任务的信心,也符合学生的认知规律。

2.微视频在问题解决和学生计算思维培养中可以起到事半功倍的作用

一般来说,微视频是 10 分钟左右的包含一个知识点视频。在中学信息技术课堂教学中,老师可以将一些知识点录制成微视频,让学生观看微视频进行学习而不是统一讲解。这样,学生可以完全按自己的学习节奏来学习,而不会因为老师的统一讲解打断自己的思路,也不会因为不好意思问老师而错过问题。在信息技术课堂上,一些固定的、有标准答案的问题能用微视频解决,学生就会将精力集中在需要他们认真思考的与计算思维相关的问题上。

3.老师要有意识为学生营造宽松的学习环境,肯定和鼓励学生的探索与创新

培养学生的计算思维,就是培养学生像计算机科学家一样思考问题并解决问题,发明创造、科技创新、寻求突破是人类不懈努力的动力与源泉,而培养和具有计算思维已成为实现这一切的重要前提和必备条件。在课堂上,老师要利用多种形式的鼓励措施和多种多样的教学形式,促使学生积极主动地利用计算思维解决实际问题,为学生的探索和创新创造一切可能的条件。

总之,问题解决是中学生计算思维培养的有效载体,同时,计算思维也可以成为问题解决的有力保障,两者是相互依存的关系。随着中学一线教师的深入教学实践与研究,对中学生计算思维的培养必将取得更有价值的成果。

参考文献:

[1]中华人民共和国教育部.普通高中信息技术课程标准[M].北京:人民教育出版社出版,2017.

[2] Google.Exploring Computational Thinking [DB/OL] .http://www.google.com/edu/computational — thinking/index.html,2014 —07 —15.

[3]王飞跃.面向计算社会的计算素质培养:计算思维与计算文化[J].工业和信息化教育,2013(6):4 —8. 7fEijmX9yMEuu+/++5HuF6CtvWjpTywPfMb9DJfxErIWxz5zjrSa8FASmaBSC4Tp

点击中间区域
呼出菜单
上一章
目录
下一章
×