仲恺软件设计模式实验指导书
更新时间:2023-12-01 15:20:01 阅读量: 教育文库 文档下载
- 软件设计模式与体系结构推荐度:
- 相关推荐
软件设计模式实验指导书
适用专业:计算机科学与技术,网络工程
制 定 人:郑建华
信息科学与技术学院
2016 年 9 月
软件设计模式实验指导
一、实验目的
使用合理的UML建模工具(Enterprise Architect、ROSE或者Visio)和任意一种面向对象编程语言实现几种常用的设计模式,加深对这些模式的理解,包括简单工厂模式、工厂方法模式、抽象工厂模式、单例模式、适配器模式、组合模式、装饰模式、外观模式、命令模式、观察者模式、策略模式等11种模式。
二、实验内容
根据以下的文档描述要求,使用合理的UML建模工具(Enterprise Architect、ROSE或者Visio)和任意一种面向对象编程语言实现以下设计模式,包括根据实例绘制相应的模式结构图、编写模式实现代码,运行并测试模式实例代码。
(1)、 简单工厂模式
使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传入参数W,则返回一个Woman对象,请实现该场景。现需要增加一个新的Robot类,如果传入参数R,则返回一个Robot对象,对代码进行修改并注意女娲的变化。
(2)、 工厂方法模式
海尔工厂(Haier)生产海尔空调(HaierAirCondition),美的工厂(Midea)生产美的空调(MideaAirCondition) 。使用工厂方法模式描述该场景,绘制类图并编程实现。
(3)、 抽象工程模式
电脑配件生产工厂生产内存、CPU等硬件设备,这些内存、CPU的品牌、型号并不一定相同,根据下面的“产品等级结构-产品族”示意图,使用抽象工厂模式实现电脑配件生产过程并绘制相应的类图,绘制类图并编程实现。
(4)、 单例模式
用懒汉式单例实现在某系统运行时,其计数用的类只能有一个,如果第二次实例化该类则默认采用第一个计数实例。绘制类图并编程实现。
(5)、 组合模式
使用组合模式设计一个杀毒软件(AntiVirus)的框架,该软件既可以对某个文件夹(Folder)杀毒,也可以对某个指定的文件(File)进行杀毒,文件种类包括文本文件TextFile、图片文件ImageFile、音频视频文件MediaFile。绘制类图并编程实现。
(6)、 适配器模式
现有一个接口DataOperation定义了排序方法sort(int[]) 和查找方法search(int[], int),已知类QuickSort的quickSort(int[])方法实现了快速排序算法,类BinarySearch 的binarySearch(int[], int)方法实现了二分查找算法。现使用适配器模式设计一个系统,在不修改源代码的情况下将类QuickSort和类BinarySearch的方法适配到
DataOperation接口中。绘制类图并编程实现。 (要求实现快速排序和二分查找)
(7)、 装饰模式
在某咖啡店,用户可以在选择茶或者咖啡作为基础饮料,还可以任意添加红糖、奶油、冰糖等料,请用装饰器模式实现该店饮料计费系统,以便能方便的计算不同类型的饮料价格。使用装饰模式设计该系统,绘制类图并编程实现。
(8)、 外观模式
在电脑主机(Mainframe)中,只需要按下主机的开机按钮(on()),即可调用其他硬件设备和软件的启动方法,如内存(Memory)的自检(check()),CPU的运行(run()),硬盘(HardDisk)的读取(read()),操作系统(OS)的载入(load())等,如果某一过程发生错误则电脑启动失败。使用外观模式模拟该过程,绘制类图并编程实现。
(9)、 命令模式
某软件公司欲开发一个基于Windows平台的公告板系统。系统提供一个主菜单(Menu),在主菜单中包含了一些菜单项(MenuItem),可以通过Menu类的
addMenuItem()方法增加菜单项。菜单项的主要方法是click(),每一个菜单项包含一个抽象命令类,具体命令类包括OpenCommand(打开命令),CreateCommand(新建命令),EditCommand(编辑命令)等,命令类具有一个execute()方法,用于调用公告板系统界面类(BoardScreen)的open()、create()、edit()等方法。现使用命令模式设计该系统,使得MenuItem类与BoardScreen类的耦合度降低,绘制类图并编程实现。
(10)、
观察者模式
某在线股票软件需要提供如下功能:当股票购买者所购买的某支股票价格变化幅度达到5%时,系统将自动发送通知(包括新价格)给购买该股票的股民。现使用观察者模式设计该系统,绘制类图并编程实现。
(11)、
策略模式
设计一个网上书店,该系统中所有的计算机类图书(ComputerBook)每本都有10%的折扣,所有的语言类图书(LanguageBook) 每本都有2元的折扣,小说类图书(NovelBook)每100元有10元的折扣。现使用策略模式来设计该系统,绘制类图并编程实现。
三、实验要求
1. 正确无误绘制简单工厂模式、工厂方法模式、抽象工厂模式、单例模式、适配器模式、组合模式、装饰模式、外观模式、命令模式、观察者模式、策略模式的模式结构图;
2. 使用任意一种面向对象编程语言实现简单工厂模式、工厂方法模式、抽象工厂模式、单例模式、适配器模式、组合模式、装饰模式、外观模式、命令模式、观察者模式、策略模式,代码运行正确无误。
四、实验报告要求
提供简单工厂模式、工厂方法模式、抽象工厂模式、单例模式、适配器模式、组合模式、装饰模式、外观模式、命令模式、观察者模式、策略模式装饰模式结构图及实现代码;
仲恺农业工程学院实验报告
课程名称:软件设计模式
班级:
学号:
姓名:
第一次实验报告
一、 实验目的
使用合理的UML建模工具(ROSE或者Visio)和任意一种面向对象编程语言实现几种常用的设计模式,加深对这些模式的理解,包括简单工厂模式、工厂方法模式、抽象工厂模式、单例模式、适配器模式、组合模式、装饰模式、外观模式、、命令模式、观察者模式、策略模式等11种模式。
二、实验内容
(1)、 简单工厂模式
使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传入参数W,则返回一个Woman对象,请实现该场景。现需要增加一个新的Robot类,如果传入参数R,则返回一个Robot对象,对代码进行修改并注意女娲的变化。
(2)、 工厂方法模式
海尔工厂(Haier)生产海尔空调(HaierAirCondition),美的工厂(Midea)生产美的空调(MideaAirCondition) 。使用工厂方法模式描述该场景,绘制类图并编程实现。
(3)、 抽象工程模式
电脑配件生产工厂生产内存、CPU等硬件设备,这些内存、CPU的品牌、型号并不一定相同,根据下面的“产品等级结构-产品族”示意图,使用抽象工厂模式实现电脑配件生产过程并绘制相应的类图,绘制类图并编程实现。
(4)、 单例模式
用懒汉式单例实现在某系统运行时,其计数用的类只能有一个,如果第二次实例化该类则默认采用第一个计数实例。绘制类图并编程实现。
正在阅读:
仲恺软件设计模式实验指导书12-01
非车险业务理赔操作流程03-10
应用心理学毕业论文12-10
2011新婚姻法全文02-18
第十章 组织变革与组织文化01-10
初级培训填空题+名词解释(双)08-09
初一学生家长会教师发言稿 共五篇01-29
大学生抑郁症自杀案例4篇02-21
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 仲恺
- 指导书
- 设计模式
- 实验
- 软件
- 高一语文(人教版)必修2同步练案:练案25(含答案)
- 组成电气控制电路的基本规律及保护措施
- 《自己的花是让别人看的》教学杂谈
- 2019年中国橡胶绑带行业发展研究分析与市场前景预测报告目录
- 政治经济学(资本主义)复习参考资料
- 题--文件1
- 肃南裕固族自治县人民政府办公室印发10件实事实施方案的通知
- 2018-2024年中国滴灌设备行业市场调查分析及投资策略专项研究预测报告
- 2018年秋季最新人教版小学数学二年级上册单元课时过关必备训练
- 马克思剩余价值理论的形成过程研究
- 关于心内科医生进修总结
- 现代交换原理和技术期末复习资料
- 中班心理健康教案
- 继保题库1~3
- UG编程精讲 - 图文
- 工业分析化学经典试题答案01
- 试卷三
- 社区主任、社区党支部书记思想道德风险点及防范措施一览表
- 关于进一步规范合同管理工作的通知
- 进制转换综合练习题