中小学信息技术学科学生计算思维培养的策略与方法

2015-11-28 06:32谢忠新曹杨璐
中国电化教育 2015年11期
关键词:计算机学科算法

谢忠新,曹杨璐

(上海市浦东教育发展研究院,上海 200135)

中小学信息技术学科学生计算思维培养的策略与方法

谢忠新,曹杨璐

(上海市浦东教育发展研究院,上海 200135)

计算思维是当前国际计算机界和教育界较为关注的一个重要的概念,在中小学信息技术课程实施过程中如何有效培养学生的计算思维,是中小学信息技术学科教师十分关注的内容。该文阐述了计算思维的概念与内涵,结合目前中小学信息技术课程的目标,指出计算思维在中小学信息技术课程中的重要作用。根据计算思维包含的算法思维、评估、分解、抽象、概括这五大要素,分别设计了基于计算思维某一方面培养的单个课堂活动,通过具体介绍英国中小学计算课程的一个培养计算思维的课堂实例详细分析如何在信息技术学科教学中落实对学生计算思维的培养,最终总结出在信息技术学科中培养学生计算思维的方法与策略,期望对我国中小学信息技术学科的教学提供一定参考。

计算思维;教学;策略;信息技术

计算思维是当前国际信息技术教育领域广为关注的一个重要内容,目前国内高校信息技术教育领域也正在研究与关注计算思维。2010年7月,教育部高等学校计算机基础课程教学指导委员会在西安的会议上发布了《九校联盟(C9)计算机基础教学发展战略联合声明》[1],确定了计算机基础课程的教学改革,此次教学改革是以计算思维为核心。在国内外中小学信息技术教育领域,计算思维也是课程改革的重点关注内容。例如2013年英国将原有的信息通信技术课程(简称ICT课程)改名为计算课程(Computing),在课程理念、课程内容等方面都发生了深刻变革。从新的课程标准看,计算课程更能凸显对学生计算思维、创新思维和批判性思维的培养。在英国,计算思维已经作为中小学信息技术课程的重要内容之一。美国计算机学科教师协会(Computer Science Teacher Association,即CSTA)2011年推出了新版本“K-12计算机课程标准”,计算思维是其重要课程内容之一。中国中小学信息技术新课程标准修订工作也在启动,课程标准研制也开始涉及计算思维的能力培养。因此,在中小学信息技术课程教学中如何有效实施计算思维培养是值得探讨的话题。

一、计算思维的概念与内涵

计算思维(Computational Thinking)这一概念的提出,最早是在2006年3月,周以真(Jeannette M.Wing)教授在美国计算机权威刊物Communications of the ACM上提出的,周教授当时任美国卡内基·梅隆大学(CMU)计算机科学系主任,现任美国基金会(MSP)计算机和信息科学与工程部(CISE)主任。周教授认为,计算思维是运用计算机科学的基础概念进行问题求解、系统设计、以及人类行为理解等涵盖计算机科学之广度的一系列思维活动[2]。根据周教授的观点[3],计算思维就是通过简略、融入、转换和仿真的方法把一个看起来比较困难的问题重新解释成一个人们知道用什么方法解决的问题,计算思维与人们的日常生活及工作密切相关,应为人类不可或缺的一种能力。

计算思维这一概念一经提出,引起了学术界广大学者的共鸣。2011年,国际教育技术协会(ISTE)和计算机科学教师协会(CSTA)对计算思维这一概念进行了进一步的阐释,对此下了一个操作性的定义,指出计算思维是一个用来解决问题的过程,有以下六个特点[4]:(1)制定问题,并且能够使用外界工具如计算机和其他工具等帮助解决这个问题;(2)组织和分析数据,要符合逻辑;(3)通过抽象,如模型、仿真等,重现数据;(4)通过一系列有序的步骤也就是算法思想,支持自动化的解决方案;(5)识别、分析和实施可能的解决方案,找到最有效的方案,并且有效结合这些步骤和资源;(6)将该问题的求解过程进行推广并移植到更广泛的问题中[5]。英国中小学信息技术课程提到的计算思维,认为用计算机来解决问题分为两个步骤:首先是想好解决问题的具体步骤,然后运用专业技术能力通过计算机来实现。计算思维描述了当我们思考如何利用计算机来解决问题时所利用的过程(Processes)与方法(Approaches)。2013年,南安普敦大学的Cynthia Selby博士和John Woollard博士提出计算思维包括算法思维(Algorithmic Thinking )、评估(Evaluation)、分解(Decomposition)、抽象(Abstraction)、概括(Generalisation)这五个方面的要素[6],如图1所示。

图1 计算思维五个方面

根据以上的诸多定义和特点,我们可以这样认识计算思维:计算思维不是对计算机的思考,也不是像计算机那样思维。因为计算机本身是没有思维的,计算机思维是人的思维,是人类求解问题的一条途径[7],是一种描述当我们思考如何利用计算机来解决问题时所采用的过程和方法。它与人们的学习、生活密切相关,就像日常生活中人们读书写字做算术一样,计算思维成为人人都具备的,最普遍、最适合、最不可或缺的思维方式。

二、计算思维与中小学信息技术课程

培养和提升学生的信息素养是目前中小学信息技术课程的目标。学生的信息素养表现为有能力使用信息技术工具获取加工、管理、表达与交流信息,有能力对信息活动的整个过程、方法、结果进行评价。在熟悉利用现代技术条件和环境的基础上,有能力发表自己的观点,进行思想交流,开展合作,从而能解决学习以及生活中出现的实际问题。由于年龄及适应能力的差异,小学、初中、高中不同阶段的目标侧重点会有所不同。

中小学信息技术课程学生学习信息技术相关知识与原理,掌握信息技术工具与软件的相关操作技能,关注学生运用信息技术分析问题与解决问题能力培养的同时,更加关注学生学科思维的培养。计算思维更重要的是将计算机的思维不自觉地应用到生活和学习中去[8]。面对不断变化的信息社会,信息技术课程并不应该把每位学生培养成信息技术的使用者、程序设计专家,而是希望学生能够具有信息技术学科的思维方式。信息技术的发展与更新是非常快的,新的技术与新的设备、新的工具软件不断出现,系统与软件的版本也在不断更新,因此中小学信息技术课程的内容不应该重点关注信息技术本身,而应该关注中小学信息技术课程的学科思维。学科知识与学科思维发展的结合[9],能帮助学生在知识学习的过程中形成独特的学科思维方式,全面理解生活中的世界,让学生在“学技术”“用技术”的基础上,能够从现实情境中,批判性地认识技术变革给信息环境带来的整体影响,并应用学科思维解决信息生活中的现实问题。在这样一个大环境下,信息课程的内容体系会有所变化[10],更倾向于给学生增加更多的机会发展计算思维。

中小学信息技术课程的学科思维应该关注学生计算思维、批判性思维与创新思维,其中学生计算思维应该作为中小学信息技术课程的重要目标。在信息化时代的今天,具有计算思维,能够熟练运用新兴的计算机技术和手段进行学习与工作,能够解决专业问题是信息化社会人才必须具有的素质,在中小学信息技术教育中,教学生掌握计算思维比单纯的学习操作计算机更为重要。

Selby和Woollard博士关于计算思维的观点比较适合中小学信息技术教育,计算思维具体包括算法思维、评估、分解、抽象、概括。其中“算法思维”是一种通过明确定义的步骤来解决问题的方法,而不是计算出一个问题的答案,是让学生们自主开发一组指令或规则,不论是人还是一台计算机。如果准确地遵循与执行这组指令或规则,就会得出问题答案的类似这种解决问题的方法。“评估”确保一个算法的解决方案是最佳方法,各种算法的性能都需要进行评估:答案是否正确?速度是否足够快?对资源的占用是否最经济?是否方便人们使用?是否能促进合理经验的产生?因为一个理想的解决方案不可能满足所有这些条件,所以需要综合考虑这些指标对算法进行整体评估。“分解”是一种根据整体的各个组成部分思考算法、流程、系统、问题的方式,这些独立的部分可以被单独来理解、解决、开发和评估,这使复杂的问题更容易解决,使得大型的系统更容易设计。“抽象”是另一种使问题或系统更容易思考的方式,它涉及隐藏细节——删除不必要的复杂性,使得问题在没有任何损失的情况下变得更容易,抽象是一种用来更容易创建复杂算法和整个系统的方法,关键是选择好系统的表示方式,不同表示方式使得不同的事情更容易做。“概括”是一种基于先前已经解决的问题快速解决新问题的方式,我们可以对解决一些特定问题算法进行改造,使其能解决所有类似问题,然后当遇到一个新问题时,我们可以应用这个通用的解决方案。

三、中小学信息技术课程培养学生计算思维的策略与方法

计算思维由算法思维、评估、分解、抽象、概括这五个方面构成,在中小学信息技术课程实施过程中如何有效培养学生的计算思维,是中小学信息技术学科教师十分关注的内容。信息技术学科教师对于学生计算思维培养关注最多的是开展算法与程序设计教学,信息技术课程标准中[11],“算法与程序设计”是高中的一个选修模块,该内容是让学生进一步体验算法的思想。实际上算法思维只是计算机思维的一个方面,在中小学信息技术教学中,不仅仅只是算法与程序设计模块能较好地培养计算思维中的算法思维,在其他课程内容模块中,只要精心组织好培养计算思维的课堂活动,也都可以很好地培养学生计算思维,关键是教师要结合信息技术课程内容挖掘与精心设计计算思维培养的课堂活动,如图2所示。

图2 中小学信息技术课程培养学生计算思维的方法

在进行中小学信息技术学科课堂教学过程的设计时,教师可以结合课堂教学内容针对计算思维的其中一种思维的培养,设计课堂某个教学环节的活动,也就是一节课关注计算思维的某一方面思维,教师也可以结合课堂教学内容,设计课堂整体教学活动。在教学活动中,关注计算思维的多个方面的培养,也就是在一节课中设计计算思维的多个方面内容。

(一)基于计算思维某方面思维培养的单个课堂活动设计

计算思维包括了算法思维、评估、分解、抽象、概括等多种思维方式,在课堂教学活动设计时可针对计算思维的某方面思维培养,结合教学内容单独设计某个环节的课堂教学活动。

1.算法思维培养的课堂活动

例如:高中“算法与程序设计”模块,在“算法的初步认识”教学中,教师可以设计“猜数字”课堂游戏活动。老师自己选择 1 到 100 之间的某个数字,请同学们猜猜是什么数字?学生可以问老师关于数的问题,老师只能回答“是”或“不是”,并且每个学生只可以问老师一个问题。

第一次,教师选择一个1到100之间的数字,要求学生随机猜测数字。

第二次,教师重新选择一个1到100之间的数字,要求学生按顺序从数字“1”开始猜测,例如“是1吗?”“是2吗?”允许他们有尽可能多的机会去猜数字,最后解释这就是所谓的线性查找。

第三次,教师再选择一个1到100之间的数字,请同学们猜,猜之前教师向学生解释他们已经知道的数字是小于100,所以建议他们问“是小于50吗?”,然后再问“是少于 25吗? ”或“是小于75?”,告诉学生以保持减半直到猜到这个数,解释这种方法就是二分查找。

三次猜数游戏活动后,组织学生讨论哪种方法更快。当他们熟悉了如何使用二分查找后,使用1到1000数字重新来玩这个猜数游戏。

通过这个游戏,让学生体会问题的解决有具体的步骤与方法,同时让学生在真实的猜数字游戏中体验达到同一个目的或解决同一个问题可以运用不同的方法,通过总结和归纳不同方法解决的共通之处,从而更好地理解什么是算法,培养学生的算法思维。

2.分解思维培养的课堂活动

例如:初中信息技术课程,在“计算机硬件组成”教学中,教师可以以一台旧的桌面电脑为例,拆开这台电脑,来向学生展示与介绍计算机内部的各个组成部分,让学生理解计算机是由更小组件连接在一起的系统,其中一些组件仍然可以进一步分解。虽然利用插图也可能看到计算的内部结构,但是利用拆解一台台式电脑的方法,使学生能更好地理解计算机的组成与内部结构,同时培养学生通过分解来认识问题、分析与解决问题的意识与能力。

3.抽象思维培养的课堂活动

例如:鼓励正在学习Flash动画设计与制作的学生们创建“乒乓球比赛”的游戏动画,因为这个动画是基于现实世界系统,因此学生们得需要使用一些抽象来处理动画中系统的复杂性。例如,在一个简单的乒乓球比赛游戏动画中,模拟包括乒乓球是如何移动的,以及它如何反弹的,在设计与制作这个动画时忽略空气阻力、乒乓球重力与旋转等因素。

当用计算机对问题进行求解时,首先要对问题进行分析,明确问题的要求,然后要抽象成适合在计算机表示的数据结构和形式化的数学模型,同时要忽略一些复杂的细节,因此抽象在用计算机解决问题过程中十分重要的。

4.概括思维培养的课堂活动

例如:“位图和矢量图”是信息技术学科教学中学生需要理解的两个相似的概念。学生在学习了位图的概念后,教师可以通过展示大量矢量图的实例,显示矢量图的性质,引导学生把矢量图与位图进行对比,寻找它们之间的联系与异同,最后引导学生概括出矢量图的本质属性与概念。

在信息技术学科知识教学过程中,教师可以引导学生寻找新旧知识之间的联系,找到新旧知识之间的异同,引导学生运用迁移规律概括出新知识。

(二)基于计算思维培养的课堂整体教学活动设计

在中小学信息技术学科教学过程中,除了有针对性地设计有关计算思维某方面思维培养的活动外,也可以针对具体学科教学内容,在整体设计一节课的课堂教学活动时,充分挖掘计算思维的各方面内容,或者充分利用计算的一种或多种思维方式来设计课堂教学活动。以下通过一个英国中小学计算课程的培养计算思维的课堂实例来分析如何在信息技术学科教学中落实学生计算思维的培养。学科知识主题:“网络与通信——使用一种二进制协议来传输信息”[12],设计的相关课堂教学活动及说明如下表所示。

“使用一种二进制协议来传输信息”教学活动及说明表

续表

从上述的一个完整课堂教学案例中可以发现,可以基于计算思维的具体内容来设计课堂教学活动,能更好地让学生理解与掌握信息技术学科的相关知识与技能。例如,通过“算法思维”把问题分解成具体的有序、详细的步骤,培养学生利用信息技术进行分析问题与解决问题;通过“归纳(概括)”思维,把利用信息技术解决问题的方法迁移应用到更加广泛的问题解决中,把对某种信息技术的概念与原理的理解方法迁移到其他类似概念与原理的理解中。另外,要充分挖掘信息技术学科教学内容所蕴含的计算思维的相关内容,在学生理解与掌握信息技术相关知识与技能的同时,培养学生的计算思维。

四、结束语

在中小学信息技术学科教学中,教师们对于信息技术的相关知识与原理一般都能较正确地把握,对信息技术工具与软件的相关操作技能有效处理,但是有时候教师在教学过程中注重传授技术应用的同时,忽略了对学生计算思维的培养。因此,一方面,我们要重视学生计算思维的培养;另一方面,课程中的计算思维是需要教师在教学的经验中不断挖掘,这包括挖掘基于学科教学内容对应的计算思维,也包括教师们通过对计算思维各个要素的思考,设计出能培养学生对应相关方面能力的相关课堂活动。面向学科思维的信息技术课程教学中要避免信息技术学习的重复记忆和机械应用,要在学生掌握信息知识与技能的基础上,引导学生用信息技术学科思维全面认识和思考这个复杂的信息化社会,作出科学、专业的信息化判断,让学生更好地在信息化社会中生存、创新与发展。

[1]何钦铭,陆汉权,冯博琴.计算机基础教学的核心任务是计算思维能力的培养——《九校联盟(C9)计算机基础教学发展战略联合声明》解读[J].中国大学教学,2010,(9):5-9.

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

[3]王荣良.计算思维对中小学信息技术课程的影响初探[J].中国教育技术装备,2012,(27):56-57.

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

[5]Anon.Operational Definition of Computational Thinking for k-12 Education [DB/OL].http://www.iste.org/Libraries/PDFs/Operational_Definition_of_Computational_Thinking.sflb.ashx,2012-04-15.

[6]Selby,C.,Woollard,J.Computational Thinking:The Developing Definition[DB/OL].http://eprints.soton.ac.uk/356481,2014-06-23.

[7]袁开榜.二十一世纪,人们应该具有计算思维能力[J].计算机教育,2011,(3):30-33.

[8]侯慧玲,王新龙,李学斌.高中信息技术课程教学中计算思维的培养[J].长治学院学报,2011,(5):114-116.

[9]Gardner,H.The Disciplined Mind:What All Students Should Understand[M].New York:Simon and Schuster,1999.14-20.

[10]刘向永,郭鹏飞,张贵芹.我国信息技术课程发展的动力分析与可能路径[J].中国电化教育,2014,(12):38-54.

[11]王荣良.信息技术课程中算法学习的价值探索[J].中国电化教育,2008,(8):79-81.

[12]Paul Curzon,Mark Dorling,Thomas Ng.Developing computational thinking in the classroom:a framework[DB/OL].Http://community.computingatschool.org.uk,2014-06-08.

谢忠新:特级教师,博士,研究方向为教育信息化(xiezhongxin@163.com)。

曹杨璐:教师,硕士,研究方向为教育信息化(cyanglu@126.com)。

2015年8月15日

责任编辑:宋灵青

The Strategy and Method of the Students’ Computational Thinking Training on Information Technology Discipline in Primary and Middle School

Xie Zhongxin,Cao Yanglu
(Pudong Institute of Educational Development,Shanghai 200135)

Computational thinking is an important concept in the field of international computer and education,how to cultivate the students' computational thinking in the course of the implementation of the information technology curriculum in primary and secondary schools is an important part that teachers should be concerned about.This paper expounds the concept and connotation of computational thinking,combined with the objective of information technology curriculum,points out that the computational thinking plays an important role in the course of information technology in primary and secondary schools.According to the fi ve factors (Algorithmic Thinking,Evaluation,Decomposition,Abstraction,Generalisation)that are included in computational thinking,a single classroom activity based on one part of computational thinking is designed.An example of a computing course in the UK is presented in detail,analyzes how to implement the training of students' computing thinking in the course of information technology.In the end,the paper summarizes the methods and strategies of cultivating students' computing thinking in information technology,and it is expected to provide some reference for the teaching of information technology in primary and secondary schools in China.

Computational Thinking; Teaching ; Methods and Strategies; Information Technology

G434

A

1006—9860(2015)11—0116—05

猜你喜欢
计算机学科算法
【学科新书导览】
计算机操作系统
土木工程学科简介
基于计算机自然语言处理的机器翻译技术应用与简介
计算机多媒体技术应用初探
Travellng thg World Full—time for Rree
进位加法的两种算法
信息系统审计中计算机审计的应用
“超学科”来啦
一种改进的整周模糊度去相关算法