2.6网络应用软件开发
一、教学设计模板
课程标准
和
教学目标
网络应用调试发布
教材内容: 2.6.4调试发布
适应的课程标准:
2.5通过分析常见的信息系统,理解软件在信息系统中的作用,借助软件工具与平台开发网络应用软件。
教学目标:
●掌握使用Flask框架进行调试的基本方法及步骤。
●掌握使用日志文件对网络应用进行调试的基本方法及步骤。
●了解网络应用的发布至专用服务器的方法。
指向的核心素养:
●信息意识:能够按要求获取与处理信息;在合作学习过程中,愿意与团队成员共享信息。
●计算思维:针对给定的网络应用能使用Flask框架或日志形式完成网络应用的调试,并最终完成发布。在此过程中能提炼出网络应用的基本调试方法,进行抽象处理,并用形式化的方法来表述。
●数字化学习与创新:掌握数字化学习系统,学习资源与学习工具的操作技能,用于开展自主学习、协同工作、知识分享与创新创造。
学习环境:有教学控制软件的多媒体机房,并装有PPT软件。
建议课时:1课时
教学活动设计
教学环节
教学过程
设计意图
情境导入
导入1:用事先完成的具有聊天记录功能的“网络聊天机器人”进行演示,从而引起学生的学习兴趣。同时引导学生思考网络应用的特点,并针对以下问题进行讨论、交流和回答。
1、由于网络应用程序的特殊性,当其出现错误时该如何进行调试?
2、如何将网络应用发布至专用的Web服务器以供访问?
通过对预设问题的分析及讨论交流启发学生思考,引导学生从网络应用输入输出、运行于远端主机等情况出发,归纳总结出网络应用调试发布与普通单机应用调试发布的不同,从而最终给出相应的解决方案。同时在此过程中也培养了信息意识。
知识讲解(1)
通过分析上述问题,并在归纳总结学生回答的基础上,以PPT等多媒体投影或板书形式介绍网络应用程序调试的特殊性、及Flask框架调试模式的使用方法。
程序错误:第一类是相对简单的语法错误,在程序执行时Python会检查出相应错误并给出修改建议;第二类为相对复杂的逻辑错误,这就需要编程人员仔细研究和分析了。Web应用又因其输入和输出的特殊性,调试相对来说更加不易。
Flask框架提供了一个称为调试模式的功能,只要在开发配置或程序代码中设置debug = True就能打开调试功能,注意不要在实际的网站应用环境,即生产环境中使用调试模式,否则将会是一个巨大的安全漏洞。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
dstr = '我的第一个Web程序!' + 1
return dstr
if __name__ == '__main__':
app.run(debug=True)
通过讲授让学生对网络应用的调试有一个直观的认识,然后通过实例代码的调试,理解和掌握Flask框架在网络应用调试编中的应用方法及根据反馈对错误的判断,让学生进一步强化相应知识的掌握,从而实现知识的内化和计算思维的培养。
实践体验(1)
在知识讲解的基础上,进一步提出任务,如何在网络应用运行过程中运用邮件进行报错或日志文件记录具体的状态,以便于事后的对程序进行分析和排错。
任务:小组合作(2人一组),网上搜索日志记录文件的格式及Python文件的读写方法,并根据实际应用设计一日志文件的记录内容,初步实现日志记录的相关代码,并最终以PPT的形式进行汇报。选择1-2个小组介绍自己的成果,进行点评。最后在教师的讲授和指点下完成如下的网络应用日志记录的代码示例。
通过实例代码的编写和实践运行,理解和掌握在网络应用中的使用日志文件记录程序运行状态,以便于事后的对程序进行分析和排错,从而解决网络应用的调试难题。让学生进一步强化相应知识的掌握,从而实现知识的内化和计算思维的培养。并通过PPT的汇报,让学生们的信息处理能力有所提升,培养学生数字化学习与创新的核心素养。
知识讲解(2)
教师以PPT等多媒体投影及实际演示的形式来介绍网络应用在专用Web服务器上的发布;说明设计状态与生产状态的不同及网络应用发布的方法。
Web应用发布
1、在开发环境中我们只需要通过如下命令就可以启动Web应用,以供他人访问使用。
Python 应用程序.py runserver
2、以WSGI应用或CGI形式发布
在实际生产中常见的可靠的Web服务器有很多,如:IIS、Apache、Nginx、Tomcat及WebLogic等,只需将自己编写的Web应用程序以WSGI应用或CGI形式发布至相应Web服务器即可。
配置Nginx服务,在nginx.conf文件的Server段中加入以下代码:
以CGI形式运行Web应用
Python 应用程序.py runcgi
通过讲授让学生对网络应用的发布有一个直观的认识,然后通过实例代码的分布,理解和掌握网络应用的发布的必要性及相应的方法,让学生进一步强化相应知识的掌握,从而实现知识的内化和计算思维的培养。
实践体验(2)
任务:小组合作(2人一组)通过网络搜索Flask-SQLAlchemy及SQL相关知识,了解数据库的应用。同时从教学资源网站或教学光盘中获取具有聊天记录功能的“网络聊天机器人”完成应用的发布,并在此应用代码基础上提出自己的改进方案(如:输入内容形式改变、界面美化或增加不同功能等)。选择1-2个小组介绍自己的成果,进行点评。
通过实践任务的布置,促使学生自主学习,推动小组合作完成任务,让学生自主学习理解数据库的作用,并进一步熟练网络应用的发布方法,在实践中进一步对所掌握的知识所进行分类、归纳和验证,形成系统化知识;同时通过合作学习,与团队成员共享信息,培养了信息意识的素养。
课堂小结
1.网络应用软件的调试:利用Flask框架调试、应用日志文件调试。
2.网络应用软件的发布。
3.“网络聊天机器人”的调试与发布。
通过回顾总结帮助学生掌握网络的构建步骤及其各相关设备的作用,进一步理解信息系统应用的特点及网络在信息系统中所起的作用,提高学习自觉性和热情。
作业布置
基础作业(面向所有学生):
详见课后练习。
提升作业(面向学有余力学生):
请制作一个解决日常问题的网络应用(主题不限)
课后作业是课堂学习的延伸,是巩固和升华知识点的有效途径。根据学生的基础