本周主要学习内容有软件工程、Javaweb-JSP、MVC三层架构、Filter。
软件与软件危机
软件是程序、数据及相关文档的有机集合。程序实现预定功能,数据是处理对象,文档则是开发、使用和维护的依据。软件按功能分为系统软件与应用软件;按规模和工作方式也有不同分类。早期软件开发面临软件危机,表现为成本超支、进度失控、质量低下、文档缺失、生产率低。其根源在于软件规模和复杂度攀升,同时缺乏有效开发管理方法。
软件生命周期
软件生命周期涵盖需求开发、软件设计、构造、测试、交付与维护。需求开发包括获取、分析、定义、验证和管理需求;软件设计分为总体设计和详细设计,同时注重人机交互设计;构造阶段程序员将设计转化为代码;测试用于查找缺陷;交付完成部署、培训与总结;维护则修复缺陷、适应变化、满足新需求,贯穿软件使用全程。
软件开发模型
常见的软件开发模型各有特点与适用场景。瀑布模型遵循线性顺序,阶段明确、易于管理,但灵活性差,适用于需求稳定的项目。敏捷开发强调快速迭代、客户参与,能快速响应需求变化,适合需求不明确、变化频繁的项目。原型模型先构建原型获取反馈,再完善开发,可降低需求风险。迭代模型每次迭代增加功能,逐步完善软件,有助于提前发现问题并改进 。这些模型为不同项目需求提供了多样选择。
JSP原理
浏览器向服务器发送请求,不管访问什么资源,其实都是在访问Servlet!
JSP最终也会被转换成为一个Java类!
JSP本质上就是一个Servlet
在JSP页面中:
只要是java代码,就会原封不动的输出;
如果是HTML代码,就会被转换为:
out.write("<html>\r\n");
这样的格式,输出到前端!
Filter
Filter开发步骤:1.导包 2.编写过滤器 3.在web.xml中配置filter