设计模式大作业报告

2020-04-16 10:40

《设计模式》 课程大作业报告

姓 名: 专 业: 班 级: 日 期:

陈明 软件工程 1202 2015年5月29日

-- - - -_- _- _- -_- -号 - - 位-- - 座- - - - - - - _- -_ - _- _- -号 -○场 线考- -- - - --_- _- -_ -_- -_ - _- _- -_ - 名- - -姓 - - - ○ 封- _- _-- _--_ - _- -_- _- -_ - _- _- -_ - 级- - -班 - - - - ○ _密- _-- _--_ - _- -_- _- -_ - _- _- -_ -_- -_ - 号- -- 学- - - -- - - -

西安欧亚学院2014—2015学年第二学期考试试卷

专业:软件工程 课程:设计模式 年级:12级

评卷人 1 2 3 4 总分

完成一个综合项目程序,其中使用所学设计模式两个或者两个以上。要求在文档中首先给出项目程序完成的功能或者解决的问题,然后详细说明模式使用的具体情况,即角色和相应程序代码。文档赋分标准如下:

1、程序功能阐述明确,分析清楚。(15分)

2、使用两种设计模式,使用得当,并给出相应的角色及程序代码,程序代码有恰当的注释。(60分)

3、文档格式正确,排版清晰。(15分)

4、如果使用超过两种设计模式,并且使用正确。(10分)

说明:以上总分为个人的期末成绩,本课程个人总成绩=平时成绩*40%+期末成绩*60%。

用户和药店以及制药厂交互的例子

一、程序功能描述

工厂方法模式:为某药店开发的应用程序需要使用Drug类的某个子类的实例为用户提供药品,而不直接使用Drug的子类的构造方法直接创造对象。因为药店没有能力给出药品的各个成分的含量,只有药厂才有这样的能力。

抽象工厂模式:通过创建多个药品工厂的类,让用户可以和创建的对象的类进行脱耦,为用户提供多个相关的药品,方便用户联合使用它们,用户不需要知道药品具体的生产过程

将“工厂方法模式”与“抽象工厂模式”相结合,实现用户和创建对象的类脱耦,并且为用户提供多个相关的对象。买药的用户只需要知道去药店买什么药就行了,不必去药厂,也不需要知道要的成分,只需要去药店,然后药店就会提供所需药品的信息,包括成分和生产厂商以及对应的生产线。

二、程序代码

文件1:Drug.java

public abstract class Drug { //抽象产品类

public abstract String getType(); //获取药品类型 public String getName() { //获取药品名称 }

return name;

public String getConstitute() { //获得药品成分 }

return constitute;

String constitute; String name;

}

文件2:Paracetamol.java

public class Paracetamol extends Drug{ //具体产品类

public Paracetamol(String name, int[] a) { //具体药品,并创建数组用来存

放药品的各种成分含量

@Override

public String getType() { //获取药品类型

return type = \氨加黄敏胶囊\

public Paracetamol() { //具体药品所在生产线 }

System.out.println(\氨加黄敏胶囊是使用1号生产线生产的。\ }

this.name = name;

part1 = part1 + \:\毫克\\n\part2 = part2 + \:\毫克\\n\part3 = part3 + \:\毫克\\n\part4 = part4 + \:\毫克\\n\constitute = part1 + part2 + part3 + part4;

String part1 = \每粒含乙酰氨基酚\String part2 = \每粒含咖啡因\String part3 = \每粒含人工牛黄\String part4 = \每粒含马来酸氯苯\String type;

}

}

文件3:Amorolfine.java

public class Amorolfine extends Drug{ //具体产品类

@Override

public String getType() { }

文件4:DrugCreator.java

// TODO Auto-generated method stub return type = \甲硝唑胶囊\}

public Amorolfine() { }

System.out.println(\甲硝唑胶囊是使用2号生产线生产的。\

public Amorolfine(String name, int[] a) { }

this.name = name;

part1 = part1 + \:\毫克\\n\part2 = part2 + \:\毫克\\n\constitute = part1 + part2; String part1 = \每粒含甲硝唑\String part2 = \每粒含人工牛黄\String type;


设计模式大作业报告.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:译林小学英语五年级上册五-上-Unit-1-单元测试

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: