APP下载

编程,让初中生的思维品质悄然提升

2019-04-13江苏省南通市通州区教师发展中心

天津教育 2019年23期
关键词:预见性小鱼探测器

江苏省南通市通州区教师发展中心 朱 艳

教育是什么?《说文解字》中对“教育”的解释是:“教,上所行,下所效也”,“育,养子使作善也”。比对教育的概念,编程教学好像只能算是茫茫“教”海的一条溪流。有哲学家说,“存在,即合理”。那么编程教学对初中学生的教育意义在哪里呢?笔者在组织江苏省信息学奥林匹克竞赛初赛及复赛这项工作中,在对部分初中参赛选手的数学成绩进行持续观测后,惊喜地发现编程这一“小众”的技能学习会给那些学生打开一扇门,开启一个全新的世界,助他们自信地走向自主学习之路。究其根本,我认为还是编程提升了他们的思维品质,量变引起了质变。

百度百科上是这样描述思维品质的:“人们在思维活动过程中表现于不同方面的特点及其差异,就构成其思维品质。”思维的主要品质有很多,比如:思维的逻辑性、广阔性、深刻性、独立性……个人认为编程教学会对学生思维的逻辑性、创造性、预见性、独立性产生较为深远的影响。

一、编程提升了学生逻辑思维能力

我们经常用“灵”这个字来评价一个聪慧的孩子,这样的孩子显著的特征是很会随机应变、见“招”拆“招”,根据不同的情境解决问题。世间有万事万物,但是这万事万物之间皆有关联,如何关联?逻辑是桥梁。初中阶段是编程学习的初级阶段,学生学习了程序的三种基本结构:顺序结构、选择结构、循环结构。顺序结构是依据问题的求解的关键值来安排进程,比如为了最终解决问题,需要先做什么后做什么;选择结构则是用来赋予计算机以“决策”的能力,就需思考如何设计好条件表达式,让计算机有更多的“选择”权,更具智能;至于循环,则更需要学生具备火眼金睛,他们需要从题干中提炼出诸如:循环多少次结束?循环执行什么?除了循环设计外,还需要综合考虑循环之前的准备工作,以及循环之后的结束工作。事情的发展顺序,解决问题的方法及步骤,学生都需全盘考虑。逻辑在哪里?个人认为藏在问题分析的过程中,藏在解决问题的运筹帷幄中。编程解决问题,问题不再是平面的文字,它们被学生转化为各种立体的线索,最终他们用计算机语言去表达,去实现。

二、编程提升了学生创造性思维能力

何为创造力?创造力,是人类特有的一种综合性本领。创造力是指产生新思想,发现和创造新事物的能力。学编程的学生们都有一股子不服输的劲儿。同样解决一道题,比如搜索类的经典问题迷宫,有的学生用深搜去解决,有的学生有宽搜解决。用宽搜算法解决的,又有学生用STL去写代码,有学生用数组模拟队列去写代码。洛谷上有各种题解,想要“学习”他人的代码是特别容易的事。但是,他们更乐于去写有自己的思想与方法的代码去解决问题。他们更享受自己原创的题解,通过洛谷管理员的审核,与更多志同道合的人去探究、去碰撞、去创造。他们用计算机“听”得懂的语言,去征服计算机,让计算机帮助他们解决看起来“纷繁复杂”的问题。科技强国,在人工智能高速发展的今天,这群孩子步伐坚定地朝着远方走去。他们深知,代码是有灵魂的,COPY的代码是没有生命力的。通过自己的代码去改变世界,是他们在编程解决若干题后被唤醒的梦想。实践,让梦想不再遥不可及。

三、编程提升了学生预见性思维能力

预见性是指一个人对事物发展的预判和前瞻。一个人预见性的强弱往往决定着一个人的能力大小。学习编程会提升学生的预见性思维能力?在我关注“教师们怎么教,学生怎么学”的过程中,发现了一个有趣的算法:递推算法,这个算法让我联想到预见性这三个字。递推算法是根据事物发展的规律,找到其递推关系式,然后编程解决相关问题。比如爬楼梯问题、兔子繁殖问题,经过推理发现问题的本质是斐波拉契数列规律相似。

在这一节全区初中教学公开课上,教师精心设计教学流程,学生推导发现,最终发出这样的感悟:大自然太神奇、人类太伟大了,推理可以发现规律,但规律并不局限于某一事物发展规律。由此发散出去:人所生活的物质的世界,规律、定理也一定不仅局限于某一事物。比如能量守恒定理,有得必有失;比如月满则亏,水满则溢,房价股价涨跌皆有其规律。有专家说计算机科学的尽头就是哲学,经典算法是计算机科学家智慧的结晶,系统的算法学习必然会给学生们带来更多的头脑风暴,让他们对这个世界有更高层次的认识。

四、编程提升了学生独立性思维能力

经研究发现:在学科学习中学得轻松且高效的学生都有这样的特点:他们善于独立地发现、分析和解决问题。他们在课堂上,眼里有光,胸中有竹,他们的思维是具有很强的独立性的。具有独立性思维品质的学生,他们在学科学习上游刃有余。为什么说编程可以提升学生的独立性思维能力呢?比如,学生用编程解决一道这样的数学题:

“有一次,小鱼要从A 处沿直线往右游,小鱼第一秒游7 米,从第二秒开始每秒游的距离只有前一秒的98%。有个极其邪恶的猎人在距离A 处右边S米的地方,安装了一个隐蔽的探测器,探测器左右X米之内是探测范围。一旦小鱼进入探测器的范围,探测器就会在这一秒结束时把信号传递给那个猎人,猎人在一秒后就要对探测器范围内的水域进行抓捕,这时如果小鱼还在这范围内就危险了。也就是说小鱼一旦进入探测器范围,如果能在下1 秒的时间内马上游出探测器的范围,还是安全的。现在给出S 和X 的数据,请你判断小鱼会不会有危险,如果有危险输出Y,没有危险输出N。”在编程之前,他们得首先从题目中提炼关键字,找出解决问题的核心。在这个阶段,平面的文字并不利于分析问题,学生们会使用数学中常用的办法——画图。

图画出来之后,才能更快捷地找出解决问题的关键:小鱼花了多少时间游至探测器边界(速度会衰减),进了区域之后,小鱼1 秒游行的路程是否能超出探测器区域,如果未能冲出探测器区域小鱼即是有危险的,否则就是安全的。

有了解题思路,接下来就是思考如何用程序去实现,在程序编制中,学生需要考虑抽象几个变量,需要用什么程序结构……程序编制出来,还需要进行调试,调试成功后,在线评测测试是不是对任何给定的S 与X,都能得到正确的解。如果未能,还需思考是否在某些细节上未能考虑周全,比如本题中探测器所在的位置在距离A点7米以内,小鱼是绝对有危险的。这是一道模拟算法题,学生在学完顺序结构、选择结构、循环结构后可完成。洛谷此类题万千,教师不可能一一讲解,学生们要体验Accept的成就感,只能通过学习借鉴教师的解题方法,独立思考,勤于实践。积跬步而至千里,方法、知识融会贯通后,迁移将是自然发生的。笔者对我区某初中参加信息学奥林匹克竞赛的二十多个学生的数学成绩进行持续观测后发现,这些学生数学成绩提高率比没有参加竞赛的学生的提高率高出20%。

五、结语

任何一门学科,对学生的影响都是“润物细无声”的,不是一蹴而就的。教师悉心地教,学生潜心地悟,才能感受程序的魅力,才能真正爱上编程,从而提升个人的思维品质。编程教与学从来就不是一件功利的事,而是教师与学生皆渐入佳境的事。唯有热爱,才能发现其间的乐趣,体会其中的益处。作为通州区教师发展中心的信息技术研训员,我将竭尽所能地培养更多热爱编程教学、专注于编程教学研究的教师,进而为更多的学生打开代码世界的大门,帮助他们找到开启提升思维品质的钥匙。

猜你喜欢

预见性小鱼探测器
第二章 探测器有反应
EN菌的引力波探测器
第二章 探测器有反应
小鱼
小鱼
减少胸腰椎术后腹胀的预见性护理策略及其成效
小鱼
预见性护理在手术室感染控制中的应用效果
预见性护理在无痛人工流产中的应用效果观察
有7颗彗星已经被探测器造访过