JavaScript流程控制——猜数字游戏
课程名称:web前端设计(JavaScript)
适用专业:计算机应用技术
案例作者:李艳
案例主题
“分支结构程序设计——猜数字游戏”案例,使学生在《web前端设计(JavaScript)课堂教学中明白“登高必自卑、行远必自迩”。做任何事情都要循序渐进、由易到难,脚踏实地。

教学目标
知识目标
掌握分支语句的语法结构及使用方法
掌握循环语句的语法结构及使用方法
能力目标
通过简单游戏程序的导入,培养学生的逻辑思维能力。
通过运行、分析、编写程序提高学生自主学习的能力。
素质目标
培养学生的逻辑思维能力,并且加强学生的团队合作精神。
培养学生养成认真、细心、严谨的作风和持之以恒的品质。
培养学生积极探索、精益求精的工匠精神。
案例意义
本节课以学生为主体、教师为主导的教学理念,将知识目标、能力目标和素质目标有机融合。围绕教学目标,通过介绍程序基本结构和调试程序,使学生切身体会到,任何一个小小的疏忽,都会使整个程序无法运行或者得到错误的结过。引导学生无论是日常生活、学习,还是工作,都要养成认真、细心和严谨的作风。通过由浅入深的讲解,使学生明白“登高必自卑、行远必自迩”的道理。
在教学过程中,介绍分支结构,使学生明白在人生的道路上,存在着诸多选择,引导学生树立正确的世界观、人生观、价值观,养成良好的职业道德。在面临个人利益与国家利益相冲突的问题上,要勇于战胜自我,以国家利益为重,做出正确的抉择。
介绍循环,使学生明白成功没有捷径,它是日复一日的坚持、循序渐进的不断探索。明白循环的本质是重复,但是并不是没有条件的重复,理解“量变才能引起质变”的科学观。培养学生持之以恒和百折不挠的品质。
教学实施过程
教学过程—课前“预探预知” |
教学环节 |
教学活动 |
教师(主导) |
学生(主体) |
新知预习 |
1.在课程平台发布微课视频,布置课前测试。 2.汇总学生操作测试结果,收集学生的问题。 |
1.登录课程平台,自主学习课程内容。 2.可查阅相关知识,完成课前测试内容。 |
教学设计意图 |
利用信息化手段辅助学生进行课前预习,通过学生提交的预习作业及时了解学生疑难困惑,为课上教学做准备。 |
思政融入 |
启发学生独立思考和学习的能力,培养主动学习的习惯 |
教学过程—课中“探索新知” |
(一)情景导入 (5分钟) |
1. 教师引入猜数字游戏案例,展示程序运行过程,引导学生快速进入课堂。 
2.结合情景,引出本次课的任务,使用if语句、if…else语句嵌套、while循环语句。 |
1.按照课前分组入座,回忆课前微课内容。 2.运行案例程序,引导学生在if语句的基础上如何去解决案例中的问题,引出本堂课的内容。 |
教学设计意图 |
1.按分组入座,方便学生讨论。 2.展示课堂案例,提出问题,激发学生解决问题的兴趣,引导学生快速进入知识点的学习。 3.通过问题明确本课任务。 |
思政融入 |
培养学生善于观察的能力,引导学生勇于表达自己的想法。 |
(二)知识储备 (30分钟) |
1.老师讲解选择结构中if…else语句嵌套语法和循环结构中while语句语法。 2.老师利用小案例“判断最大值”讲解。if…else语句嵌套的使用方法和“1-100累加求和”讲解while语句使用方法。 |
学生尝试仿照老师小案例进行代码编写。练习if…else语句嵌套和while语句的使用方法。 |
教学设计意图 |
1.从简单的小案例入手,学生容易接受。 2.引导学生思考本堂课的任务,如何使用新知识实现算法。 |
思政融入 |
使学生明白“登高必自卑、行远必自迩”。做任何事情都要循序渐进、由易到难,脚踏实地。 |
(三)项目分析 (30分钟) |
算法流程图: 
|
1. 通过小组成员讨论,利用。Math.random()方法可以获取(0,1)的随机数,使用Math.floor()处理成1-100的随机整数。 2. 程序外层通过while循环控制猜数字的次数。 3. 程序内层通过if…else语句嵌套进行判断。 |
教学设计意图 |
1.由浅入深,层层分解逐步完成算法。 2.引导学生通过思考尝试解决问题。 3.通过小组讨论、成员协作,培养学生的团队意识。 |
思政融入 |
培养学生主动观察、发现问题,解决问题的能力。 |
(四)项目实施 (30分钟) |
1.将事先编写好的代码进行解读,并运行。 2. 对学生出现的问题进行启发式解答,引导学生自主分析问题解决问题。 |
1. 在Hbulider软件中新建html页面。 2.在页面中通过<p>、<h2>标签搭建页面结构,并做简单的样式设置。 3.在<script></script>标签下依据算法完成脚本代码的编写。 |
教学设计意图 |
1.通过代码编写,检验学生所学内容的掌握程度。 2.通过细节处理,培养学生耐心细致的态度。 3.代码的书写应该遵循规范,增强可读性,便于团队协作完成。 |
思政融入 |
培养学生精益求精、注重细节的工作态度。 |
(五)总结反思 (5分钟) |
1.进入智慧职教,收取学生课堂完成项目内容。 2.总结学生课堂表现 |
1.查看得分结果,思考自己的不足。 2.对本堂课知识点进行归纳总结。 3.小组之间互评课堂表现 |
教学设计意图 |
小组和个人成绩能够激励学生并认识到自己的不足之处。 |
思政融入 |
润物细无声的渗透工匠精神,潜移默化的引导学生自己是职业人的认识。 |
教学过程—课后项目实训 |
知识巩固 |
1.发布课后拓展练习:学生成绩评级 设计一个 JavaScript 程序,使用 while 循环控制次数,并在循环体内使用 if...else if 语句对学生成绩进行评级。 页面提示用户输入学生的成绩,然后根据成绩的范围给出相应的评级,直到用户输入特定的结束指令。 2.具体要求如下: 用户输入成绩时,如果输入 -1,表示结束输入,循环终止。 对于每个输入的成绩,根据以下规则给出评级:成绩大于等于 90,评级为 "优秀"。 成绩大于等于 80,评级为 "良好"。 成绩大于等于 70,评级为 "中等"。 成绩大于等于 60,评级为 "及格"。 其他成绩,评级为 "不及格"。 每次给出评级后,继续要求用户输入下一个学生的成绩。 在循环结束后,输出“评级结束”。 |
1.完成拓展练习。 2.在编写代码过程中遇到问题可与课堂小组中的成员讨论解决。也可寻求老师的帮助。 3.将代码源文件及运行结果截图(部分)上传至智慧职教。 |
教学设计意图 |
获取课后任务,合理利用有效充裕的课后时间,完成拓展练习,巩固所学知识。 |
|
|
|
|
教学效果评价
教学内容由浅入深,从简单到复杂。教学过程循序渐进,课堂容量恰当。通过代码编写,学生基本上掌握了的if…else语句嵌套和while语句的使用方法。通过课后巩固练习,能够使用所学语句解决实际问题。
教学中运用任务驱动教学法、小组合作探究法等方法,激发学生的学习热情,促进学生进一步提高自主学习的能力、分析能力,课堂上逐步深入,运用翻转课堂有助于突破教学难点,易于学生掌握较复杂的内容。
教学设计中通过案例教学,使学生运用所学的知识解决实际问题,提高了学生的学习兴趣。
教学反思
采用工作任务驱动、分组讨论,启发式、互动式的教学方法,由浅入深的完成教学设计,以if…else语句嵌套、while循环语句为主要学习内容,提高分析问题能力、代码编写能力,运行结果排错能力等技能目标,借助于信息化手段,以学生为主体完成了线上线下混合式教学。
课程实施过程中存在的不足: 课堂组织采用小组讨论的形式,虽然锻炼了学生的语言表达能力,增强了同学们的团队意识,活跃了课堂气氛,增加了学生的课堂参与度。但是没有考虑到由于课堂的节奏比较快,所以学习基础比较差的同学课堂参与回答问题的次数反而减少了,对于各个学习层次的同学兼顾不够。
因此在今后的课堂组织过程中,小组成员的分配要合理,兼顾各个学习层次的同学,尽量拉长讨论时间让同学们都参与其中,让更多基础比较差的同学有回答问题的机会,增强学生的参与度和自信心。