论文部分内容阅读
● 内容分析
《体验可视化编程》一课选自教育科学出版社出版的《算法与程序设计》(选修)教材。本课内容是在必修模块“信息加工与表达”基础上的继续深入,有助于学生了解程序设計在解决问题过程中的地位和作用。根据课题分析,本课内容涉及两个部分,一是“体验编程过程”,主要是第一章第三节的内容,二是“可视化编程”,与第二章第一节的内容有关,主要是让学生了解可视化编程的过程,感受可视化编程的特点与魅力,而VB中的对象、属性、方法、事件和事件驱动等基本概念是本课重要的知识基础。学好本节内容,为第四章的学习奠定基础,有助于培养和提升学生利用VB等可视化编程工具解决问题的能力,促进他们计算思维的养成。
● 学情分析
教学对象是高二年级的学生。通过“信息技术基础”课程的学习,学生虽然已经有了比较好的应用软件使用基础,体验过用计算机解决问题,但没有真正接触过编程过程,并且计算机语言的编写基础较差。从认知发展来看,高中学生逻辑思维能力逐步趋于成熟,具有一定的演绎归纳能力和数学基础,这为计算思维的进一步发展创造了条件。
● 教学目标
知识与技能目标:熟悉VB集成开发环境;理解控件、对象、属性、事件及事件驱动等基本概念;能初步使用标签、按钮、文本框等基本控件;初步认识赋值语句。
过程与方法目标:通过设计界面理解“可视化”的含义;通过具体实例分析,进一步理解应用计算机解决问题的基本过程,并在使用VB实践中逐步梳理出可视化编程的一般步骤;能利用学案开展自主学习。
情感态度与价值观目标:培养分析处理问题的能力,在尝试设计编写小程序的过程中体验利用VB解决问题的乐趣,增强逻辑思维能力;形成对技术带来的道德与法律问题的理性的价值判断,进一步强化信息安全意识。
● 教学思路
1.内容重组
本节选题涉及两个章节的内容,前一部分是算法初步,后一部分是程序设计,二者之间亦是承上启下的关系。同时,高二学生虽完成了必修与网络技术应用选修模块的学习,但对“算法与程序设计”是第一次接触。如果教师机械地根据教材顺序,从算法开始到程序编写,不仅时间不够充足,也不容易引起学生的兴趣。所以,笔者尝试将“可视化编程”移到模块最前面,这样学生在学习初期就可以利用可视化编程动手解决一些小问题,初步具备可视化编程的能力。
2.“程序”优先
学习可视化编程,不是要将学生培养成“编程”高手,而是培养其编程思想,形成科学的思维方式。可视化编程的步骤中有“编写程序代码”环节,不可避免会涉及到算法的实现,走进使用指令编写程序的情境。因此,笔者让学生亲历“程序”本身,即可视化编程解决问题的过程,而“算法”(代码编写)应进行弱化处理。
● 教学过程
课前准备:在学生机上安装“改造”后的QQ。
1.登录QQ,激起疑惑
学生进入机房后,发现电脑桌面与以往有所不同,多了个QQ图标。好奇心与兴奋感驱使学生主动点击打开程序,当输入自己的QQ号与密码后,学生发现密码竟然显示出来,他们大呼“上当”(如下页图1、图2、图3)。
师:看来大家太不小心了,账号密码已经被盗了!
生:老师,这个程序怎么会知道我的密码呀?(学生疑惑,议论)
师:看来大家都很想知道这个程序背后的秘密呀。现在我们就开始探秘解密之旅!
设计意图:本课创设了一个真实的生活情境(从学生经常使用的QQ软件入手,制作了一个QQ模拟登录器“吸引”学生登录,从而完成“钓鱼”行动)。因为账号密码被盗是学生生活中常碰到的事,这立刻就引发了学生探究秘密的欲望,教师趁热打铁,引出本节课内容,从而顺利进入下面的教学环节。
2.认识“创作室”,建立概念
师:请大家回忆一下,刚才你们进行了什么操作,为什么会出现这样的结果?
生:在文本框内输入信息,然后点击“登录”按钮,出现新按钮点击后就出现了自己的账号、密码。
师:这些操作其实是人与计算机的互动。那计算机是如何对我们的行为做出反应的呢?我们就从秘密的发源地、编程的创作室——VB开始。
笔者打开VB,在“新建工程”对话框中选择“标准EXE”后单击“打开”按钮,进入集成开发环境一边演示,一边解释。(VB是一种可视化程序开发工具,提供各种控件。每种控件都有其自身的功能。例如,将“按钮控件”拖到窗体上,就生成了具有这个控件所有功能的具体对象。可以像搭积木一样利用各种控件构造应用程序的各种界面,然后再编写少量的代码就可以构建应用程序)
师:我们尝试在VB环境中制作一个简易的QQ登录程序。
设计意图:通过问题引发学生思考程序大致的工作流程:输入—处理—输出(反馈)。通过介绍VB环境使学生初步建立起“控件”“对象”“可视化”的概念。
3.设计界面,内化概念
笔者演示简易版QQ,输入账号、密码,单击“登录”按钮,在上方显示出当前账号的密码(如图4),启发学生抽象地表达需要本程序解决的问题:账号密码可手动输入、判断密码以及显示密码;再引导学生把问题分解、约简为不同部分:输入、获取密码以及输出。
师:要实现这些功能,我们需要哪些控件?
学生观察界面,分析程序界面有哪些对象,思考需要哪些控件。
教师根据学生的回答,总结归纳后展示,验证并肯定学生的想法。
(1)添加控件
学生根据学案提示,自主完成如下页图5所示的界面。
(2)设置对象属性
学生完成界面构造后,会发现它与演示界面有些不同,如Label1显示成“账号”、Command1显示为“登录”。
师:我们所看到的Label1、Commad1是对象的默认名,就像我们每个人有自己的姓名一样。而除了姓名,我们每个人之间还会有差异,如身高、年龄、胖瘦等,这些特征就是我们与旁人区别的特征。同样,在窗体中,具体的对象会表现出不同的特征,也就是属性。(提示:在单击界面某一对象时,请观察右侧属性窗口的变化) 学生会发现每个对象都可以被选中,并在“属性”窗口显示其相关属性,找到对应的属性,将自己的属性预设值填入表格,并在此基础上,在VB环境中修改对象的属性值。
(3)保存文件
学生完成设置后,根据学案要求保存文件,会发现需要保存两次不同格式的文件,提出疑问。
教师抓住时机对学生操作进行广播,并强调工程与工程文件的关系,即一个工程(*.vbp)往往包含多个不同类型的文件,如窗体文件(*.frm)。
设计意图:①通过对界面的分析设计,引导学生经历分解、模块化的方法,培养学生在VB环境中进行问题解决的思维方式,以期达到计算思维的迁移。因为学生有使用软件的经验,所以教师对工程新建、控件添加未过多交代,而是将时间交给学生,让他们根据学案选择合适的控件,自主完成。学生通过实践,熟悉标签控件、文本框控件的功能,进一步理解控件与对象的关系。②引导学生观察不同类型的对象,强调“对象”和“属性”的概念以及它们之间的联系。同时,借助表格填写帮助学生整理形成条理性思路。学生只有充分理解“对象”“属性”以及它们之间的联系才能在后续的学习中更好地理解“事件”概念。
4.编写代码,破解秘密
师:界面已经搭建好了,大家可以运行测试一下程序。
学生单击“登录”按钮,界面上方沒有显示密码。
师:大家回到窗体,能找到问题所在吗?问题出在哪里?
生:界面好像没有什么问题,但感觉按钮不给力呀!
师:我们将问题分解成三部分——输入、获取密码以及输出显示,现在输入没问题,主要在显示获取密码,那密码显示是在什么操作之后出现的?
生:单击按钮之后出现。
师:看来是按钮没有听指挥呀,那我们一起探索按钮背后的秘密。(教师演示选中按钮对象双击打开“代码设计”窗口,在代码窗口可以看到三个部分——对象、事件和代码)事件就是发生在对象上的事情。例如,对登录按钮(Command1)对象进行单击,此时应该选择“Click”事件。单击以后要如何显示密码?大家可以试着改变Lable3的Caption属性。有一句咒语大家可以试一试:Label3.Caption=“你的密码为:”
《体验可视化编程》一课选自教育科学出版社出版的《算法与程序设计》(选修)教材。本课内容是在必修模块“信息加工与表达”基础上的继续深入,有助于学生了解程序设計在解决问题过程中的地位和作用。根据课题分析,本课内容涉及两个部分,一是“体验编程过程”,主要是第一章第三节的内容,二是“可视化编程”,与第二章第一节的内容有关,主要是让学生了解可视化编程的过程,感受可视化编程的特点与魅力,而VB中的对象、属性、方法、事件和事件驱动等基本概念是本课重要的知识基础。学好本节内容,为第四章的学习奠定基础,有助于培养和提升学生利用VB等可视化编程工具解决问题的能力,促进他们计算思维的养成。
● 学情分析
教学对象是高二年级的学生。通过“信息技术基础”课程的学习,学生虽然已经有了比较好的应用软件使用基础,体验过用计算机解决问题,但没有真正接触过编程过程,并且计算机语言的编写基础较差。从认知发展来看,高中学生逻辑思维能力逐步趋于成熟,具有一定的演绎归纳能力和数学基础,这为计算思维的进一步发展创造了条件。
● 教学目标
知识与技能目标:熟悉VB集成开发环境;理解控件、对象、属性、事件及事件驱动等基本概念;能初步使用标签、按钮、文本框等基本控件;初步认识赋值语句。
过程与方法目标:通过设计界面理解“可视化”的含义;通过具体实例分析,进一步理解应用计算机解决问题的基本过程,并在使用VB实践中逐步梳理出可视化编程的一般步骤;能利用学案开展自主学习。
情感态度与价值观目标:培养分析处理问题的能力,在尝试设计编写小程序的过程中体验利用VB解决问题的乐趣,增强逻辑思维能力;形成对技术带来的道德与法律问题的理性的价值判断,进一步强化信息安全意识。
● 教学思路
1.内容重组
本节选题涉及两个章节的内容,前一部分是算法初步,后一部分是程序设计,二者之间亦是承上启下的关系。同时,高二学生虽完成了必修与网络技术应用选修模块的学习,但对“算法与程序设计”是第一次接触。如果教师机械地根据教材顺序,从算法开始到程序编写,不仅时间不够充足,也不容易引起学生的兴趣。所以,笔者尝试将“可视化编程”移到模块最前面,这样学生在学习初期就可以利用可视化编程动手解决一些小问题,初步具备可视化编程的能力。
2.“程序”优先
学习可视化编程,不是要将学生培养成“编程”高手,而是培养其编程思想,形成科学的思维方式。可视化编程的步骤中有“编写程序代码”环节,不可避免会涉及到算法的实现,走进使用指令编写程序的情境。因此,笔者让学生亲历“程序”本身,即可视化编程解决问题的过程,而“算法”(代码编写)应进行弱化处理。
● 教学过程
课前准备:在学生机上安装“改造”后的QQ。
1.登录QQ,激起疑惑
学生进入机房后,发现电脑桌面与以往有所不同,多了个QQ图标。好奇心与兴奋感驱使学生主动点击打开程序,当输入自己的QQ号与密码后,学生发现密码竟然显示出来,他们大呼“上当”(如下页图1、图2、图3)。
师:看来大家太不小心了,账号密码已经被盗了!
生:老师,这个程序怎么会知道我的密码呀?(学生疑惑,议论)
师:看来大家都很想知道这个程序背后的秘密呀。现在我们就开始探秘解密之旅!
设计意图:本课创设了一个真实的生活情境(从学生经常使用的QQ软件入手,制作了一个QQ模拟登录器“吸引”学生登录,从而完成“钓鱼”行动)。因为账号密码被盗是学生生活中常碰到的事,这立刻就引发了学生探究秘密的欲望,教师趁热打铁,引出本节课内容,从而顺利进入下面的教学环节。
2.认识“创作室”,建立概念
师:请大家回忆一下,刚才你们进行了什么操作,为什么会出现这样的结果?
生:在文本框内输入信息,然后点击“登录”按钮,出现新按钮点击后就出现了自己的账号、密码。
师:这些操作其实是人与计算机的互动。那计算机是如何对我们的行为做出反应的呢?我们就从秘密的发源地、编程的创作室——VB开始。
笔者打开VB,在“新建工程”对话框中选择“标准EXE”后单击“打开”按钮,进入集成开发环境一边演示,一边解释。(VB是一种可视化程序开发工具,提供各种控件。每种控件都有其自身的功能。例如,将“按钮控件”拖到窗体上,就生成了具有这个控件所有功能的具体对象。可以像搭积木一样利用各种控件构造应用程序的各种界面,然后再编写少量的代码就可以构建应用程序)
师:我们尝试在VB环境中制作一个简易的QQ登录程序。
设计意图:通过问题引发学生思考程序大致的工作流程:输入—处理—输出(反馈)。通过介绍VB环境使学生初步建立起“控件”“对象”“可视化”的概念。
3.设计界面,内化概念
笔者演示简易版QQ,输入账号、密码,单击“登录”按钮,在上方显示出当前账号的密码(如图4),启发学生抽象地表达需要本程序解决的问题:账号密码可手动输入、判断密码以及显示密码;再引导学生把问题分解、约简为不同部分:输入、获取密码以及输出。
师:要实现这些功能,我们需要哪些控件?
学生观察界面,分析程序界面有哪些对象,思考需要哪些控件。
教师根据学生的回答,总结归纳后展示,验证并肯定学生的想法。
(1)添加控件
学生根据学案提示,自主完成如下页图5所示的界面。
(2)设置对象属性
学生完成界面构造后,会发现它与演示界面有些不同,如Label1显示成“账号”、Command1显示为“登录”。
师:我们所看到的Label1、Commad1是对象的默认名,就像我们每个人有自己的姓名一样。而除了姓名,我们每个人之间还会有差异,如身高、年龄、胖瘦等,这些特征就是我们与旁人区别的特征。同样,在窗体中,具体的对象会表现出不同的特征,也就是属性。(提示:在单击界面某一对象时,请观察右侧属性窗口的变化) 学生会发现每个对象都可以被选中,并在“属性”窗口显示其相关属性,找到对应的属性,将自己的属性预设值填入表格,并在此基础上,在VB环境中修改对象的属性值。
(3)保存文件
学生完成设置后,根据学案要求保存文件,会发现需要保存两次不同格式的文件,提出疑问。
教师抓住时机对学生操作进行广播,并强调工程与工程文件的关系,即一个工程(*.vbp)往往包含多个不同类型的文件,如窗体文件(*.frm)。
设计意图:①通过对界面的分析设计,引导学生经历分解、模块化的方法,培养学生在VB环境中进行问题解决的思维方式,以期达到计算思维的迁移。因为学生有使用软件的经验,所以教师对工程新建、控件添加未过多交代,而是将时间交给学生,让他们根据学案选择合适的控件,自主完成。学生通过实践,熟悉标签控件、文本框控件的功能,进一步理解控件与对象的关系。②引导学生观察不同类型的对象,强调“对象”和“属性”的概念以及它们之间的联系。同时,借助表格填写帮助学生整理形成条理性思路。学生只有充分理解“对象”“属性”以及它们之间的联系才能在后续的学习中更好地理解“事件”概念。
4.编写代码,破解秘密
师:界面已经搭建好了,大家可以运行测试一下程序。
学生单击“登录”按钮,界面上方沒有显示密码。
师:大家回到窗体,能找到问题所在吗?问题出在哪里?
生:界面好像没有什么问题,但感觉按钮不给力呀!
师:我们将问题分解成三部分——输入、获取密码以及输出显示,现在输入没问题,主要在显示获取密码,那密码显示是在什么操作之后出现的?
生:单击按钮之后出现。
师:看来是按钮没有听指挥呀,那我们一起探索按钮背后的秘密。(教师演示选中按钮对象双击打开“代码设计”窗口,在代码窗口可以看到三个部分——对象、事件和代码)事件就是发生在对象上的事情。例如,对登录按钮(Command1)对象进行单击,此时应该选择“Click”事件。单击以后要如何显示密码?大家可以试着改变Lable3的Caption属性。有一句咒语大家可以试一试:Label3.Caption=“你的密码为:”