如何将信息技术核心素养落实在课堂教学中的研究
(2020-06-23 04:11:49)如何将信息技术核心素养落实在课堂教学中的研究
西安市田家炳中学
普通高中信息技术课程是一门旨在全面提升学生信息素养,帮助学生掌握信息技术基础知识与技能,增强信息意识,发展计算思维,提高数字化学习与创新能力,树立正确的信息社会价值观和责任感基础课程。课程围绕高中信息技术学科核心素养,精炼学科大概念,吸纳学科领域的前沿成果,构建具有时代特征的学习内容;课程兼重理论学习和实践应用,通过丰富多样的任务情境,鼓励学生在数字化环境中学习与实践;课程倡导基于项目的学习方式,将知识建构,技能培养与思维发展融入到运用数字化工具解决问题和完成任务的过程中;课程提供学习机会,让学生参与到信息及时支持的沟通,共享,合作与协商中,体验知识的社会性建构,增强信息意识,理解信息技术对人类社会的影响,提高信息社会参与的责任感与行为能力,从而成为具备较高信息素养的中国公民。
新课改走进高中信息技术课堂之前,信息技术老师也参与了各种各样有关新课改的培训学习和各种研讨会。对于新课改中如何将信息技术的核心素养落实到平常的教学中,成了每个信息技术老师都在教研活动中必问的一个问题。同时,也成了大家一个学习探讨的共同话题。信息技术核心素养分别为:“个体对信息敏感度和信息价值的判断力”的信息意识,“个体在运用计算机科学领域的思想方法形成问题解决方案的过程中产生的一系列思维活动”的计算思维,“个体通过评估和选择常见的数字化资源与工具,有效地管理学习过程与学习资源,创造性地解决问题,从而完成学习任务的能力,形成创新作品的能力”的数字化学习与创新,“个体在文化修养,道德规范和行为自律等方面应尽的责任”的信息社会责任。在本次课题研究中,我们的教学教研侧重点是计算思维的培养。因为计算思维在我们农村学校的学生普遍较差,城里学生有很多,也很早的机会接触编程教育,人工智能,机器人,创客教育以及steam等教育。这些环境和条件是农村学生所达不到的。虽然说计算思维不等同于编程教育,但是的确是可以通过编程教育来培养学生的计算思维。
到底何为计算思维?
关于计算思维,不同的学者给出了不同的定义。但有一个共识:把复杂问题拆解为简单可操作的子问题;使用一系列清晰的步骤来解决问题;将解决方案迁移到类似问题中;使用计算机来自动化问题解决过程。也就是说计算思维包括问题拆解、算法、抽象和自动化等几个方面的能力。
教师应该具备怎样的能力才能有效开展计算思维教学?
计算思维是用计算机科学的概念和方法来解决问题。这就包括了变量、循环、递归、程序调试和优化等常见的编程概念和方法。因此,我们可以让学生用编程的方法来解决问题,通过他们的编程表现来评价他们的计算思维。这也就是我们在平时常规的教学中可以通过开设编程课来培养或者是提高学生的计算思维,让他们通过学习变量,常量,循环,判断,递归等编程的概念和方法,来慢慢培养编程思维,从而达到计算思维的培养。
但是同时,计算思维是一种问题解决的思维,这种问题解决方式强调让学生成为计算思考者,计算思维是对信息或数据的一系列判断,是对客观事物的概括和反映,通过分析、综合、概括、抽象、比较、具体化和系统化等一系列思维活动,对感性材料进行加工并转化为理性认识以及解决问题。所以,我觉得编程不是必需的,学生可以用计算的方法思考各种问题,例如,如何在数据中发现规律和提取模式。因此,设计相关的非编程的题目也可以来评价学生的计算思维。这就是数学老师在课堂中一些关注点和培养模式。我一直认为,计算思维的培养,有利于学生逻辑思维方式的培养,计算思维能力的提高,对于后面算法的学习和理解都是非常有益的,但是算法正好是介入数学和信息技术中的一个交集,是一个共同知识点,也就是说,计算思维的培养,既需要信息技术课堂中一系列课程的支持,也需要数学课程的配合和补充。数学概括能力,就是从大量的数学材料中抽取出最重要的东西,以及从外表不同的数学材料中找出共同点的能力。例如,数学概念和数学规律的概括,就是人脑对现实对象的数量关系和空间形式的本质特征的一种反映。计算思维作为一种计算机的一种思维方式,需要人们对身边事物的属性依据计算机事件的方式进行概括,将现实世界中事物的发展规律和问题解决方法用机械计算的方式在计算机世界中构造与重现。例如,用编程语言描述解题步骤,就是人们在概括能力的支持下,将现实问题化解为数学模型和算法,再用计算机语言精准地表达,从而告诉计算机可以机械地执行。
所以说,计算思维可以脱离编程。然而,编程仍然是培养计算思维的一个重要工具,学生使用计算机编程来解决问题、搜集和分析数据、进行科学探究和思想表达,这些都是计算思维的重要组成部分。同时,我也必须强调,编程并不等于计算思维,编程是培养计算思维的工具而不是目的。
目前流行Scratch软件教学就属于“算法与程序设计”模块。在所带班级中开展scratch编程教学,就是掌握Scratch数字化作品创作的基本制作流程和设计方法,然后借助mblock软件,展示一些开源硬件主控板结构,学习使用软件获取传感器数据、感知外部环境和利用传感器控制角色运动的方法。整个教学过程注重计算思维方法的教学,让学习者感受编程过程,理解脚本含义,最终能通过一定的脚本来表现自我设计的作品。通过一些生活中的例子,学生体验脚本编写,还参与解决生活中遇到的实际问题,知行合一,培养创新精神,提升计算思维和实践能力。
案例1《白雪公主遇险记》教学活动中,把文学中的童话世界搬到编程世界中来。在这节课中脚本比较简单,就是一些移动和角色造型的切换。但是这节课中广播消息是教学重点,也是难点。通过广播消息,接收消息,实现下一个动作。这节内容中,三个角色均有广播消息的脚本,所以,哪个角色接收哪个消息就显得尤为重要。这个时候就要求学生逻辑清楚,思路清晰,一定要理顺发送者和接收者的关系。
案例2《城市红绿灯》中学习了。利用scratch编程实现汽车面对红灯停,绿灯行的一个动画场景。这节课中学习到了侦测类脚本代码。利用运动类脚本代码块完成简单的直线运动;利用判断类脚本代码判断舞台区左下角的交通信号灯显示绿灯;利用类积木块完成城市大巴在城市中的移动。汽车判断当前的交通信号的造型,如果某一造型正好是要判断的条件,然后执行后面的动作。这也就是一般条件判断的编程方法,同时,因为脚本代码都是从上至下执行,并且一条代码只执行一次,所以,就需要加上重复执行这个控制类脚本代码。加上重复执行的作用就是让不断去判断,直到条件成立。任务中的小汽车不断去判断交通灯的颜色,直到变成绿色才执行后面的直行语句。这样的重复执行也就是一般编程中的循环结构,只有满足循环条件,继续执行下一条语句,如果不满足,跳出循环体。这样就需要判断条件,是否满足以及接下来要执行的语句,这对学生思考问题的逻辑性有很高的要求,继而达到对学生编程思维,计算思维的一个培养。
案例3《鸡兔同笼问题》是最经典的算法,不管是奥数,还是编程都会遇到这个从古至今的数学题。在这个案例中,学生初识算法和变量。开始接触一个不固定的值在编程环境中将怎么样存在并进行运算的。也掌握了如何在编程中存储变量。变量在编程中到底是怎么样的一个存在,有多大意思,它到底是一个什么等等编程问题。学生需要从不同的编程案例中总结变量不同的属性以及意思,最后慢慢总结,归纳,从而锻炼了抽象总结能力,提升解决问题的能力。
当然,一名优秀的教师需要基本两个核心能力,即具备良好的学科知识和具备良好的教学知识。就信息技术而言,学科知识就是要熟悉信息技术学科的相关知识,包括计算机的原理,编程知识,算法,数据结构,以及计算机基础应用等等。教学知识是关于教学方法,教学设计,教学评价等有关有效开展教学的知识。但是,毫无疑问,信息技术教师需要有很好的信息技术基础知识。然而,信息技术飞速发展,知识体系不断更新换代,作为一名信息技术老师,只有自己做到不断学习,利用数字化环境学习,创作,创新,这样才能及时更新自己的知识体系,紧跟时代技术的脚本,才能不被时代淘汰,不被学生质疑。我们也只能自己不断学习,创作,创新,才能更好的发现教学中的问题,思考问题,从而解决问题,在更新自己专业知识的同时,对教学能力也是一个打磨和反思的过程。
目前,我们高中学段课时比较少,任务紧,而且学习培训的机会也比较少,这也就势必造成我们信息技术老师知识滞后,眼界窄,格局不够高,往往所见所得跟大城市里的老师还是有很大区别,尤其是信息技术教育比较发达的浙江,江苏,深圳等地方。这也是我们目前一个很难解决的现状,我们也一直在寻找好的解决方法,摆脱瓶颈,力争缩小距离,实现能力的一个提升和飞越。
参考文献:
亚达夫教授《如何有效开展编程与计算思维教育,教师教育的视角》
王荣良:《“计算思维教育” 要提高学生哪些能力?》
《普通高中课程方案和信息技术学科课程标准》