下载此文档

设计模式上机实验一实验报告.doc


文档分类:高等教育 | 页数:约25页 举报非法文档有奖
1/25
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/25 下载此文档
文档列表 文档介绍
设计模式实验一
实验报告书
专业班级软件 0703
学号 3901070324
姓名吉亚云
指导老师刘伟
时间 2010年3月 27日
中南大学软件学院
实验一设计模式上机实验一
一、实验目的
熟练使用PowerDesigner绘制类图,构造系统的静态结构模型;使用PowerDesigner和任意一种面向对象编程语言实现几种常见的设计模式,包括简单工厂模式、工厂方法模式、抽象工厂模式、原型模式、单例模式、适配器模式、桥接模式和组合模式。
二、实验要求
1. 使用PowerDesigner绘制标准的UML类图;
2. 正确无误绘制简单工厂模式、工厂方法模式、抽象工厂模式、原型模式、单例模式、适配器模式、桥接模式和组合模式的模式结构图;
3. 使用任意一种面向对象编程语言实现简单工厂模式、工厂方法模式、抽象工厂模式、原型模式、单例模式、适配器模式、桥接模式和组合模式,代码运行正确无误。
三、实验步骤
1. 熟悉PowerDesigner11的常用功能;
2. 使用PowerDesigner绘制类图;
3. 使用PowerDesigner绘制简单工厂模式结构图并用面向对象编程语言实现该模式;
4. 使用PowerDesigner绘制工厂方法模式结构图并用面向对象编程语言实现该模式;
5. 使用PowerDesigner绘制抽象工厂模式结构图并用面向对象编程语言实现该模式;
6. 使用PowerDesigner绘制原型模式结构图并用面向对象编程语言实现该模式;
7. 使用PowerDesigner绘制单例模式结构图并用面向对象编程语言实现该模式;
8. 使用PowerDesigner绘制适配器模式结构图并用面向对象编程语言实现该模式;
9. 使用PowerDesigner绘制桥接模式结构图并用面向对象编程语言实现该模式;
10. 使用PowerDesigner绘制组合模式结构图并用面向对象编程语言实现该模式。
四、实验报告要求
1. 绘制实例场景的类图;
2. 提供简单工厂模式结构图及实现代码;
3. 提供工厂方法模式结构图及实现代码;
4. 提供抽象工厂模式结构图及实现代码;
5. 提供原型模式结构图及实现代码;
6. 提供单例模式结构图及实现代码;
7. 提供适配器模式结构图及实现代码;
8. 提供桥接模式结构图及实现代码;
9. 提供组合模式结构图及实现代码。
五、实验结果
使用PowerDesigner绘制类图;用PowerDesigner和任意一种面向对象编程语言实现简单工厂模式、工厂方法模式、抽象工厂模式、原型模式、单例模式、适配器模式、桥接模式和组合模式,包括根据实例绘制模式结构图、编写模式实现代码,运行并测试模式实例代码。
(1) 类图
某音像图书出租公司欲开发一个音像图书租赁信息系统,处理日常音像图书租借业务。该系统将记录所有的图书信息、唱碟信息、用户信息和用户租借信息。现决定采用面向对象分析和设计方法来开发此系统,经过初步分析,设计人员定义了如下初始实体类:
● Book(图书)类
属性:no(编号)、title(标题)、author(作者)、isbn(书号)、press(出版社)、price(价格)。
方法:每个属性的get()方法和set()方法。
● Disc(唱碟)类
属性:no(编号)、title(标题)、singer(歌手)、producer(制作公司)、price(价格)。
方法:每个属性的get()方法和set()方法。
● Customer(客户)类
o(客户编号)、name(姓名)、address(地址)、tel(电话)。
方法:每个属性的get()方法和set()方法。
● LoanItem(可租项目)类
记录Book和Disc的共有属性和方法。
● RentHistory(租借历史记录)类
属性:rno(历史记录编号)、hireTime(出租时间)、returnTime(归还时间)、cno(客户编号)、no(租借图书或唱碟编号)、deposit(押金金额)。
方法:每个属性的get()方法和set()方法。
在进一步分析之后,需要在LoanItem类中定义一个集合来存储每一种图书或唱碟的所有租借历史记录。
根据以上信息,绘制对应的实体类类图。
(2) 简单工厂模式
使用简单工厂模式设计一个可以创建不同几何形状(Shape)的绘图工具类,如可创建圆形(Circle)、方形(Rectangle)和三角形(Triangle) 对象,每个几何图形都要有绘制draw()和擦除erase()两个方法,要求在绘制不支持的几何图形时,提示一个UnsupportedShapeExceptio

设计模式上机实验一实验报告 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数25
  • 收藏数0 收藏
  • 顶次数0
  • 上传人陈潇睡不醒
  • 文件大小247 KB
  • 时间2018-05-10
最近更新