中南大学软件体系结构实验5 结构型和行为型设计模式实验

中南大学软件体系结构实验5 结构型和行为型设计模式实验

ID:1456463

大小:927.54 KB

页数:32页

时间:2017-11-11

中南大学软件体系结构实验5 结构型和行为型设计模式实验_第1页
中南大学软件体系结构实验5 结构型和行为型设计模式实验_第2页
中南大学软件体系结构实验5 结构型和行为型设计模式实验_第3页
中南大学软件体系结构实验5 结构型和行为型设计模式实验_第4页
中南大学软件体系结构实验5 结构型和行为型设计模式实验_第5页
资源描述:

《中南大学软件体系结构实验5 结构型和行为型设计模式实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《软件体系结构》实验报告项目名称结构型和行为型设计模式专业班级学号实验成绩:批阅教师:年月日32实验5结构型和行为型设计模式实验实验学时:2每组人数:1实验类型:3(1:基础性2:综合性3:设计性4:研究性)实验要求:1(1:必修2:选修3:其它)实验类别:3(1:基础2:专业基础3:专业4:其它)一、实验目的熟练使用PowerDesigner和任意一种面向对象编程语言实现几种常见的结构型和行为型设计模式,包括代理模式、职责链模式和命令模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式。二、实验内容1.在某应用软件中需要记录业务方法的调用日志,在不修改现有业务类

2、的基础上为每一个类提供一个日志记录代理类,在代理类中输出日志,例如在业务方法method()调用之前输出“方法method()被调用,调用时间为2014-11-510:10:10”,调用之后如果没有抛异常则输出“方法method()调用成功”,否则输出“方法method()调用失败”。在代理类中调用真实业务类的业务方法,使用代理模式设计该日志记录模块的结构,绘制类图并编程模拟实现。2.某软件公司承接了某信息咨询公司的收费商务信息查询系统的开发任务,该系统的基本需求如下:(1)在进行商务信息查询之前用户需要通过身份验证,只有合法用户才能够使用该查询系统;(2)在进行商务信息查询时系统需要记录

3、查询日志,以便根据查询次数收取查询费用。该软件公司开发人员已完成了商务信息查询模块的开发任务,现希望能够以一种松耦合的方式向原有系统增加身份验证和日志记录功能,客户端代码可以无区别地对待原始的商务信息查询模块和增加新功能之后的商务信息查询模块,而且可能在将来还要在该信息查询模块中增加一些新的功能。试使用代理模式设计并编程模拟实现该收费商务信息查询系统。【提示:使用保护代理和智能引用代理】3.某企业的SCM(SupplyChainManagement,供应链管理)系统中包含一个采购审批子系统。该企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批5万元以下

4、(不包括5万元)的采购单,副董事长可以审批5万元至10万元(不包括10万元)的采购单,董事长可以审批10万元至50万元(不包括50万元)的采购单,50万元及以上的采购单就需要开董事会讨论决定。如下图所示:32试使用职责链模式设计并实现该系统。4.某公司欲开发一个软件系统的在线文档帮助系统,用户可以在任何一个查询上下文中输入查询关键字,如果当前查询环境下没有相关内容,则系统会将查询按照一定的顺序转发给其他查询环境。基于上述需求,试采用职责链模式对该系统进行设计。5.房间中的开关就是命令模式的一个实例,现用命令模式来模拟开关的功能,可控制对象包括电灯和电风扇,绘制相应的类图并编程模拟实现。6.

5、某软件公司欲开发一个基于Windows平台的公告板系统。系统提供一个主菜单(Menu),在主菜单中包含了一些菜单项(MenuItem),可以通过Menu类的addMenuItem()方法增加菜单项。菜单项的主要方法是click(),每一个菜单项包含一个抽象命令类,具体命令类包括OpenCommand(打开命令),CreateCommand(新建命令),EditCommand(编辑命令)等,命令类具有一个execute()方法,用于调用公告板系统界面类(BoardScreen)的open()、create()、edit()等方法。现使用命令模式设计该系统,使得MenuItem类与BoardS

6、creen类的耦合度降低,绘制类图并编程实现。三、实验要求1.结合实例,正确无误地绘制代理模式、职责链模式和命令模式的模式结构图;2.使用任意一种面向对象编程语言实现代理模式、职责链模式和命令模式实例,代码运行正确无误。四、实验步骤1.结合实例,使用PowerDesigner绘制代理模式实例结构图并用面向对象编程语言实现该模式实例;2.结合实例,使用PowerDesigner绘制代理模式实例结构图并用面向对象编程语言实现该模式实例;3.结合实例,使用PowerDesigner绘制职责链模式实例结构图并用面向对象编程语言实现该模式实例;4.结合实例,使用PowerDesigner绘制职责链模

7、式实例结构图并用面向对象编程语言实现该模式实例;325.结合实例,使用PowerDesigner绘制命令模式实例结构图并用面向对象编程语言实现该模式实例;6.结合实例,使用PowerDesigner绘制命令模式实例结构图并用面向对象编程语言实现该模式实例。五、实验结果1.类图:实现代码:/*******************************************************************

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。