基于学科素养的高中信息技术项目式学习
2022-03-02海南省海南中学王连诚
◎ 海南省海南中学 王连诚
高中信息技术学科核心素养由信息意识、计算思维、数字化学习与创新、信息社会责任四大要素组成,信息技术教师要领会学科素养的内涵,将核心素养落实到课堂教学当中,实现课程育人的根本任务。信息技术学科核心素养具有很强的实践性,需要学生经历解决问题的过程,课程标准提倡项目式学习,在完成项目的过程中,综合形成学科核心素养。把握项目学习本质,明晰项目教学法的实施过程有利于组织课堂教学。笔者以高中信息技术课程必修模块实施编程计算体重指数(BMI)诊断健康营养状态项目式学习为例,展开了对项目式学习、落实学科核心素养的实践探索。
一、选择恰当的项目主题,挖掘项目学习价值
项目必须是一个切实的项目,它面对事件、深入问题、探索答案,并能产生影响的。选择项目主题要符合以下三个策略:所选主题必须是可以解决与现实生活紧密关联的实际问题;主题的选择要明确指向信息技术课程学习的目的和价值;所选主题应具有探究性,有一定挑战的难度,有探索的意义和价值。
计算体重指数(BMI)诊断健康营养状态项目(以下称BMI项目)为教材所选用,它就符合这个三个策略。BMI即身体质量指数,是国际上常用的衡量人体肥胖程度的重要标准。BMI是通过我们人体体重与身高这两个数值来获取的,它可以有效评判一个人的健康营养状况。
学生由于学习紧张,身体健康成为他们切身需要。学生通过计算BMI项目了解自己健康营养状况符合学生现在或者将来学习、生活的实际需求。
计算BMI,通过体重与身高这两个数值,进行数据处理,就可以显示结果,在课程目标上,这可以挖掘计算机编程基本方法,即IPO,在算法结构上,程序是顺序结构,在基础知识上,它涉及到变量和数据类型、输入语句、处理方法(赋值语句和算术表达式)和输出语句,在编程实践上,它是极简编程,符合学生认知规律。
通过BMI数值了解自己健康营养状况,要进行判断分析,首先男生和女生要求不同,判断条件也不同。它具有探索性,有持续研究价值。在课程目标上,可以学习分支语句,在程序结构上,它是条件结构,在基础知识上,它涉及到条件表达式和关系表达式以及分支语句,在编程实践上,它具有一定难度,在编程规范方面可以得到体验和提升。在项目实践上,男女学生可以依据自己角色选择男生或者女生判断标准数据,通过编程体验后,在学习分支结构嵌套来完成,实现梯度上提升,深入探索,应用分支嵌套知识来解决实际问题。
实现多个学生通过BMI数值了解自己健康营养状况,要输入多个学生数据,依据自己角色选择男生或者女生判断标准数据,在编程难度上再上一个台阶,在算法的基本结构上,它属于循环结构。在功能上,它需要退出,还可以继续学习退出语句等,在课程目标上,它涉及到算法的三种基本结构,在基础知识上,它涉及到条件表达式和逻辑表达式以及循环语句。这样,通过BMI数值了解自己健康营养状况项目几乎涉及到程序设计的基本知识,体验了分析问题、建立数学模型、设计算法、编程实现算法等计算机解决问题的一般过程。
可见,从选择主题的角度看,通过BMI数值了解自己健康营养状况项目符合选择主题的三个策略。
二、重整课程内容,丰富项目学习内涵
立足学情,依据项目解决逻辑组织学习内容,挖掘丰富资源,拓展学习内容。
在程序基本知识教学中,以往一般以学科体系知识构建为目标,首先从数据类型开始,讲授变量、常量定义以及命名、运算符与表达式,然后介绍语句和程序结构,先学习基本知识,然后使用基本知识解决问题。这里存在一个问题是学生往往学了很多知识,但是涉及到解决问题时机慢了一个节拍,脱节。比如学习了各种数据类型,但是就是很少涉及到具体应用,脱离知识产生场景,学习枯燥无味。
在项目学习教学中,我们要重构学习内容,依据解决项目问题过程中,学习基本知识,解决项目问题,理解知识来龙去脉,激发学习兴趣,学习指向性强。
按照BMI项目实施过程,把项目分解几个大任务,每个任务安排一个或几个小活动,以此重组展开课程内容。
任务1:计算BMI。安排活动:用组织结构图表示解决问题的一般过程。输入身高和体重,处理计算BMI,输出BMI,用流程图表示,编程实现。
任务2:判断对某个男生或者女生体重指数等级的完整评定。
活动1:判断BMI是否在“正常”等级范围内。用流程图表示算法,编程实现。
活动2:显示BMI对应的等级:“正常”“低体重”“超重”或“肥胖”。用流程图表示算法,编程实现。
活动3:根据任意高一学生,选择男女生进行等级判断。
任务3:输入若干个高一学生或者重复输入并可以退出,显示体重指数等级的完整评定。用流程图表示算法,编程实现。
活动1:输入5个学生,选择男生或女生,输入数据,显示体重指数等级的完整评定。
活动2:重复输入不退出、设置退出,选择男生或女生,输入数据,显示体重指数等级的完整评定。
活动3:扩展任务,使用自定义函数简化BMI项目。
依据项目重整课程内容,我们可以引导设计项目方案。倒推项目背景,参考课本内容,我们把项目设计如下:
依据《国家学生体质健康标准》体重指数等级、单项评分表以及指数范围,编程计算BMI程序(bmi.py),分别输出男女生体重指数以及等级。
1.编写程序,输入的某个高一学生身高和体重值,输出这个学生的体重指数。
2.完善程序(bmi.py)功能,如果高一年级男生体重指数值在 [16.5,23.2]范围内,则属于“正常”等级,否则属于“不正常”等级。
3.结合高一学生体重指数评分表,实现对某个男生体重指数等级的完整评定,即根据输入的身高和体重值,显示对应的等级:“正常”“低体重”“超重”或“肥胖”。
4.如果继续完善程序,使之能对任意高一学生(男生或女生)进行体重指数等级的判定。
依据学生认知规律,在课程内容构建上,首先让学生体验计算编程解决问题的一般过程,用计算机编程计算BMI指数,问题明确,分析方法简单,容易理解建立模型,能够理解算法的特征,容易理解编写程序的基本方法。在基本知识教学中,把变量概念及其定义、数据类型、输入输出语句、转换函数、赋值语句、算术表达式贯穿在体验过程中,通过体验理解编程程序IPO的基本方法,知道程序必须有若干个输入和输出的特征。
这样,通过计算BMI,把编程知识教学贯穿其中,改变过去脱离实际的做法,花费很多时间学习基本知识,比如讲授了各种数据类型,从讲解到练习,都没有涉及到解决具体问题,无法理解知识形成的过程。在计算BMI编程项目的过程中,涉及到数据类型有数值、浮点数、字符串,主要是数值、浮点数,这里不再突出字符串数据类型,更不讲列表等数据类型,通过程序编码,理解用变量描述事物的属性的特点,发现变量命名问题,比如“见名知意”,大小写问题,从编程实际活动中,理解基本知识,构建编程基本知识,加深对基本知识的理解。
挖掘丰富资源,拓展学习内容。在BMI项目中,依据自己角色选择男生或者女生判断标准数据,选择分支语句实现多分支选择结构。如果深入开展项目,还可以选择男女,这样可以扩展为分支语句的嵌套,在实际应用中体会嵌套的作用,同时可以利用选择男女生分支条件设置,理解一分支选择结构、二分支选择结构。通过BMI项目,涉及到选择结构的各种分支情况,从而理解用选择结构理解分支语句。
实现BMI项目多次或不限次数的重复输入和退出机制,学习循环结构和循环语句和中断语句,这样就基本完成了算法的三个基本结构以及实现三种结构的语句学习。
扩展内容会考察学生实际需求,比如,通过打印函数实现界面设计,深入学习字符串与变量连接的显示方式等。
三、细化教学目标设计,规划项目学习过程
项目学习实施,从课程内容构建上看,已经对教学目标做了一个安排,突出了学科基本知识,从项目任务中也可以看到要落实的学科思维,在项目活动中,对问题的解决提出了要求。依据设计好的任务分活动,细化学习目标设计,实现基础知识学习,培养学生解决问题的能力,提升学生学科思维。
在三个大任务上,设计了计算机解决问题的一般过程、算法描述和算法的三个基本结构教学目标,用组织结构图、流程图等可视化表达方式表达信息,思考算法的基本结构在算法设计的重要意义,归纳算法的基本结构特点。这是项目学习的教学目标。
在教学目标设计上,我们可以按照基础知识、问题解决过程和学科思维三个层面划分,明晰教学目标,有利于规划项目组织过程。
比如,在任务1中,计算BMI,涉及了问题解决的一般过程,设计算法概念、算法描述等基础知识,安排用组织结构表示一般过程,用流程图表达算法的顺序结构的活动,在学科思维上总结顺序结构的特点。在活动中,输入身高和体重,计算BMI的值,涉及到变量、数据类型、输入输出函数、算术运算符号和表达式、赋值语句等基本知识,通过活动学会用变量、常量、数据类型、算术表达式以及赋值语句等从而实现问题求解,在学科思维目标上,体现了理解编程的基本方法IPO、输入语句从键盘上输入数据,输出语句把数据显示在屏幕上的特点,理解赋值语句的含义。
把用流程图表示算法的三个基本结构的教学目标,分别安排在三个大任务上,在问题解决的场景中,理解算法表示,从顺序结构、选择结构和循环结构,层层推进,逐步落实教学目标,分解难度,循序渐进,在目标设计上符合学生认知水平。
四、有效实施过程,落实核心素养培养
以项目完成为主线,在项目实施中完成学习,是项目学习特点。在实施项目时,要帮助学生理解项目组织过程,引导设计项目活动方案,按照大任务小活动有效地指导实施项目活动,达成细化教学目标,先引导学生思路,先学后教,在保证项目完成的基础上,加深对基础知识学习,提升学科核心素养。
针对本项目特点,落实核心素养培养重点关注以下几点:
1.借助数字化工具进行学习,提升数字化学习能力,增强学习效果。在项目实施过程中,通过编制流程图,培养用数字化学习工具进行学习能力。通过顺序结构流程图,理解编写程序IPO基本方法;通过分支选择结构流程图,理解多分支条件表达式的优化,进一步理解分支语句的逻辑结构与语法规则,理解选择结构的特点,通过循环结构流程图设计,体会解决生活中重复操作问题的经验,概括循环结构的特点,理解按条件终止循环。
2.通过探究学习,组织交流分享,加深学习深度,培养学科思维。难于理解知识,学科思维构建,都需要探究学习活动。分支语句、循环语句实现选择结构、循环结构,是教学难点。通过探究学习,可以突破难点。
比如实现分支选择结构嵌套,可以分别假设为一分支结构、二分支结构或者多分支结构,引导学生提出猜想,设计算法,编写程序验证,通过几种情况的探究活动,深入理解分支结构的嵌套,理解在不同场景下使用不同的分支结构以及嵌套的特点。
假设循环次数,通过探究活动,理解循环结构特点。比如,循环5次的条件,循环变量定义和循环体构成,重复输入并实现退出,循环条件、循环变量、循环体以及退出机制,进而全面理解循环结构。
3.在项目解决问题的过程中,感受计算思维的魅力。BMI数据采集和存储,涉及到计算思维。要引导学生认识事物现象,抽象人的属性,如身高和体重,理解数据的类型与现实生活息息相关,定义变变量,通过编写程序,调试运行程序,验证是否通过编译,理解数据类型。
通过分支语句、循环语句运行调试,体验编程规范化,理解Python编程规范化,体会编程语句构建程序代码的思想和方法,理解递进与包含关系。
总之,通过项目促进知识学习,经历解决项目复杂问题的过程,学生可以获得解决问题的知识、方法,从而形成学科素养。