(
教育科学出版社 高中信息技术
必修 1 数据与计算
第 3 单元
认识数据
)
3.2 数据与结构(第一课时)
尊敬的各位老师,大家好!
今天我说课的课题是《3.2 数据与结构》的第一课时。我将从教材分析、学情分析、教
学目标及重难点、项目设计、教学策略、教学过程以及对本课的教学思考这七个方面来进行我的说课。
【教材分析】
本课时基于教育科学出版社教材《信息技术必修 1:数据与计算》第 3 单元“认识数据”
第 2 节的内容。
本节内容主要探讨 Python 的复合数据类型以及几种典型的数据结构。要求理解各种不
同类型数据的基本处理方式,认识和掌握数据结构是对数据间关系的抽象和组织,深刻领会应用数据结构解决学习和生活中的实际问题。
同时本部分也是后期学习算法的基础,是培养学生根据现实问题选择并使用数据结构能力的开始。
【学情分析】
本节课的教学对象是高一学生。通过前两个单元的学习,学生已具有分析简单问题的逻辑思维能力,具备了一定的编程基础。同时学生已经熟悉了项目学习的学习方式,初步掌握从项目中提炼知识的方法。
本节内容理论性强,概念丰富,学生容易产生畏难情绪。因此在教学中要善于引导学生从自己的学习和生活经历中发现鲜活的实例,让学生在旧知经验和新知体验的基础上领悟、归纳、总结、运用。以例释理的授课形式,可以避免直接灌输结论和机械记忆结论。
【教学目标及重难点】
教学目标:
通过对项目真实场景的分析,挖掘情境背后蕴含的数据之间的关系和数据类型, 培养学生捕捉信息的能力,提升学生的信息意识。
能够表达数据的逻辑关系,并学会抽象数据,建立数据模型,用恰当的数据结构表示现实对象的内在组织方式,加强学生的逻辑思维能力和计算思维能力。
重难点:
通过比较实际案例中各种类型的数据,掌握常用的数据类型及其特点。
通过具体实例分析,了解数据结构的作用,理解线性表和队列的特点,并通过
Python 编程实现线性结构的数据基本操作。
【项目设计】
基于以上分析,结合本单元的学科知识,设计了与学生研学主题相关的项目——航空航天研学小助手。
根据项目的整体规划,本节内容是在整个单元项目的最后两课时完成,本次说课的内容是其中第一课时。
结合航空航天研学活动的实际场景,创设真实的项目情境。通过学生研学途中在车站购票检票等真实场景的代入,教师引导学生学会对场景中数据的关系进行抽象,并能用简单的数据结构表达基本的数据逻辑关系。
本节课从“航空航天研学小助手”项目中的研学体验模块出发开展教学。
通过描述“车票票面内容”、“购票”、“检票”等项目场景,依次分析元组、集合、列表等复合数据类型的适用选择。再重点探究“检票”过程中数据之间的逻辑关系,剖析队列这一具有“先进先出”特点的线性结构。在分析实际问题的同时熟悉队列的概念和特点,并且能够使用程序语言对队列进行实际的操作。
整个教学重视培养学生的抽象建模能力,把现实生活中的具体问题抽象成人脑容易理解、计算机容易处理的模型,进而提高运用所学知识加以解决的能力。
【教学策略】
为了实现所述的教学方案,我采用了以下策略:
一、项目学习的关键在于选取具有典型性的真实场景,建立感性认识,解决实际问题:
(展示用身份证取票、刷身份证进站、排队检票等场景图片) 通过研究真实场景,学会数据抽象并分析数据之间的关系。
二、通过图表、概念图、示意图等描述抽象的概念:
例如,通过图表分析车票票面内容的每个数据项对应 Python 中的数据类型,引发出思考:如果车票看作一个整体,这样的数据又应该用什么数据类型定义?
车票票面的数据项 Python 对应的数据类型
车票号
始发站
终到站
车次编号
发车时间
座位号
票价金额
乘客姓名
身份证号
(
元组
列表
集合
是否有序
是否可变
)再如,通过图表从是否有序和是否可变两个方面比较元组、列表和集合的异同点, 便于学生根据实际问题的需要选择适用的数据类型。
本课涉及到数据类型和数据结构的基本概念:
数据类型用来定义一系列值及应用于这些值的一系列操作。
数据结构是存在特定关系的数据元素的集合。
教材上单纯的文字描述,对于刚开始接触这部分内容的学生而言,较为枯燥,不易理解。因此我采用概念图的表示形式,带领学生更有效地理解相关学科知识。
对于购票、检票场景应分别选择何种数据类型,我采用了示意图动态展示的形式, 有助于学生理解如何对数据进行抽象描述。
购票 检票
三、利用数据结构演示平台体验线性表和队列的基本操作:
(播放线性表和队列的操作演示视频)
学生可以利用该平台直观地体验线性表的插入、删除操作,队列的入队和出队操作。为分析线性表和队列的特点提供有效的学习资源支持。
四、提供自主学习资源,在教师引导下完成项目活动手册:
(展示教师提供的学习资源和项目活动手册相关文档截图)
在项目开展过程中学生是主体,教师是引导者。对于项目实施中遇到的问题,学生可以查阅学习资源自主学习,完成项目活动手册。通过每节课的项目学习,培养学生开展项目探究的意识和能力。
【教学过程】
在教学实施过程中,我主要是顺着学科知识线和思维逻辑线来开展教学的。
整个项目学习,我将其分成以下环节: 环节一:项目引入
课件展示研学旅途中,在火车站取票和进站这两个熟悉的场景。观察两张图上有什么相
似之处?自然引出对身份证号数据类型的研究。
[设计意图] 引入项目的真实情境,从实际场景出发回顾 Python 中已学的数据类型。
环节二:项目分析
提出问题:我们在解决问题时,如何确定应该适合用什么数据类型呢?
概念阐述:可以从数据的取值范围和对应操作两方面去考虑。(概念图展示)
[设计意图] 从数据类型的概念出发,分析身份证号用字符串定义相较于整型定义更为合适的原因。学生通过此环节,进一步加深对数据类型的理解。
环节三:项目探究
第一阶段探究:购票与检票中的数据类型。
1、车票的数据类型:结合图表,教师带领学生分析车票票面上的内容。
2、购票中的数据类型:结合示意图分析,若成功购票,在票务系统中就可以查询到此车票已售出,所有已购车票汇总起来即可。
3、检票中的数据类型:结合示意图分析,检票是按照排队次序核验车票的,此过程需要考虑队伍的先后顺序。
学生自主学习,完成项目活动手册:对比元组、列表和集合这三种复合数据类型。
[设计意图] 利用图表、示意图等方式分析,学生根据自主学习后的知识建构,尝试自己选取合适的数据类型来描述问题中的各种场景。
第二阶段探究:检票中的数据结构。
提出问题:检票时排队依次核验车票,如果把每张有效车票看作是一个个的数据。这些数据之间存在什么样的关系呢?
概念阐述:数据结构是存在特定关系的数据元素的集合。
研究数据结构可以从两个方面来思考:一是数据对象,二是数据关系。(概念图展示)
[设计意图] 从数据结构的概念出发,分析数据之间的逻辑关系。
环节四:项目展示
1、运行数据结构演示平台,体验线性表和队列的基本操作。
2、利用列表编写程序模拟队列中数据元素的入队和出队。
[设计意图] 通过在线数据结构演示平台的使用,让学生更直观地体验感知线性表和队列的基本操作,便于理解队列是一种操作受限、先进先出的线性表。再使用列表编写程序模拟队列中的数据元素入队和出队,更易于理解 append 方法、pop(0)方法和对列表判空的对应代码功能,有助于程序的完善。
环节五:项目评价
1、学生使用项目活动手册和评价量规完成个人自评;
2、师生一起进行问题探究完成小组互评;
3、教师通过在学生活动中的辅导以及学生在活动中的综合表现完成教师评价。环节六:项目总结
利用思维导图归纳总结出本节课的脉络。
【教学思考】
对于琐碎的概念,用图表、概念图、示意图等形象化方式梳理抽象知识链,通过图文联动有助于记忆和理解。
在线数据结构演示平台的引入为学习提供了支持性的学习资源和环境,将枯燥的理论动态化,有助于学生的体验和研究。
项目活动手册中设计的两个探究活动层层推进,有助于学生通过项目学习构建项目实施的逻辑线索。在项目实施中,学生利用学习资源自主学习的能力还需加强。
本节课依据项目式学习的真实情境,通过多种教学手段实现了理论与实例的关联,激发了学生的学习兴趣。让学生深刻认识到学以致用、知识来源于生活。提升了学生的学习能力,培养了学生的信息意识和计算思维等学科核心素养。
以上是我对本节课的一些理解和思考,欢迎各位老师予以批评指导。