ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:189.69KB ,
资源ID:7350733      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7350733.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件开发技术课程报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

软件开发技术课程报告.docx

1、软件开发技术课程报告软件开发技术课程报告 班 级 B090501 学 号 B09050112 姓 名 高 旭 瑞 完成日期 2012-12-10 目录1 建造者模式 11.1 定义 11.2 UML图 11.3 角色功能 22 命令模式 32.1定义 32.2 UML图 32.3 角色功能 33 原型模式 43.1定义 43.2 UML图 43.3 角色功能 44状态模式 54.1 定义 54.2 UML图 54.3 角色功能 55 装饰器模式 65.1 定义 65.2 UML图 65.3 角色功能 66 桥接模式 76.1 定义 76.2 UML图 76.3 角色功能 77 适配器模式 87

2、.1 定义 87.2 UML图 87.3 角色功能 88组合模式 98.1定义 98.2 UML图 98.3 角色功能 99中介者模式 109.1定义 109.2 UML图 109.3角色功能 1010 抽象工厂模式 1110.1 定义 1110.2 UML图 1110.3角色功能 1111 简单工厂模式 1211.1 定义 1211.2 UML图 1211.3角色功能 121 建造者模式1.1 定义将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以建造不同的表示1.2 UML图1.2.1 多个产品类的情况下的UML图如果有多个产品类的话,应当有多个具体建造者 1.2.2 省略抽象建造

3、者角色系统中只需要一个具体建造者,省略掉抽象建造者,结构图如下:1.2.3 省略指导者角色抽象建造者角色已经被省略掉,还可以省略掉指导者角色。让Builder角色扮演指导者与建造者双重角色。结构图如下:1.2.4 合并建造者角色和产品角色建造者模式失去抽象建造者角色和指导者角色后,可以进一步退化,从而失去具体建造者角色,此时具体建造者角色和产品角色合并,从而使得产品自己就是自己的建造者。这样做混淆了对象的建造者和对象本身,但是有时候一个对象有着固定的几个零件,而且永远只有这几个零件,此时将产品类和建造类合并,可以使系统简单易读,结构如下图:1.3 角色功能命令模式包含如下角色:1.3.1 bu

4、ilder:为创建一个产品对象的各个部件指定抽象接口。1.3.2 ConcreteBuilder:实现Builder的接口以构造和装配该产品的各个部件,定义并明确它所创建的表示,并 提供一个检索产品的接口。1.3.3 Director:构造一个使用Builder接口的对象。1.3.4 Product:表示被构造的复杂对象。ConcreteBuilder创建该产品的内部表示并定义它的装配过程,包含定义组成部件的类,包括将这些部件装配成最终产品的接口。2 命令模式2.1定义将一个请求封装为一个对象,从而使我们可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式

5、是一种对象行为型模式,其别名为动作(Action)模式或事务(Transaction)模式。2.2 UML图2.3 角色功能命令模式包含如下角色:2.3.1 Command: 抽象命令类声明了用于执行请求的execute()等方法,通过这些方法可以调用请求接收者的相关操作2.3.2 ConcreteCommand: 具体命令类是抽象命令类的子类,实现了在抽象命令类中声明的方法,它对应具体的接收者对象,将接收者对象的动作绑定其中2.3.3 Invoker: 调用者即请求的发送者,又称为请求者,它通过命令对象来执行请求2.3.4 Receiver: 接收者执行与请求相关的操作,它具体实现对请求的业

6、务处理3 原型模式3.1定义原型模式就是通过一个原型对象来表明要创建的对象类型,然后用复制这个原型对象的方法来创建更多同类型的对象。原型模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节。3.2 UML图原型模式的一般结构如下:3.3 角色功能原型模式包含的角色如下:3.3.1 客户角色:客户调用端,客户使用原型对象复制出需要的对象。3.3.2抽象原型角色:定义一个原型的抽象定义,其中包含一个复制自身的接口。3.3.3具体原型角色:作为原型被复制的具体对象,需实现抽象原型所定义的接口。3.3.4原型管理器角色:该角色用于创建具体的原型类对象,并且记录每一个被创建的对象并

7、且把已经创建过的对象保存下来。换句话说就是先创建对象并将其保存下来(由管理器完成)然后利用Clone()方法来创建新对象4状态模式4.1 定义允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。其别名为状态对象(Objects for States),状态模式是一种对象行为型模式。4.2 UML图该模式的结构图:4.3 角色功能该模式包含的角色如下:4.3.1 Context: 环境类又称为上下文类,它是拥有状态的对象,在环境类中维护一个抽象状态类State的实例,这个实例定义当前状态,在具体实现时,它是一个State子类的对象,可以定义初始状态4.3.2 State: 抽

8、象状态类用于定义一个接口以封装与环境类的一个特定状态相关的行为4.3.3 ConcreteState: 具体状态类是抽象状态类的子类,每一个子类实现一个与环境类的一个状态相关的行为,每一个具体状态类对应环境的一个具体状态,不同的具体状态类其行为有所不同5 装饰器模式5.1 定义动态地给一个对象增加一些额外的职责(Responsibility),就增加对象功能来说,装饰模式比生成子类实现更为灵活。其别名也可以称为包装器(Wrapper),与适配器模式的别名相同,但它们适用于不同的场合。5.2 UML图模式结构:5.3 角色功能装饰模式包含如下角色:5.3.1 Component: 抽象构件抽象构

9、件定义了对象的接口,可以给这些对象动态增加职责(方法)5.3.2 ConcreteComponent: 具体构件具体构件定义了具体的构件对象,实现了在抽象构件中声明的方法,装饰器可以给它增加额外的职责(方法)5.3.3 Decorator: 抽象装饰类抽象装饰类是抽象构件类的子类,用于给具体构件增加职责,但是具体职责在其子类中实现5.3.4 ConcreteDecorator: 具体装饰类具体装饰类是抽象装饰类的子类,负责向构件添加新的职责。6 桥接模式6.1 定义将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接

10、口(Interface)模式6.2 UML图该模式结构:6.3 角色功能桥接模式包含如下角色:6.3.1 Abstraction:抽象类抽象类中定义了一个实现类接口类型的对象并可以维护该对象6.3.2 RefinedAbstraction:扩充抽象类扩充抽象类扩充由抽象类定义的接口,它实现了在抽象类中定义的抽象业务方法,在扩充抽象类中可以调用在实现类接口中定义的业务方法6.3.3 Implementor:实现类接口实现类接口定义了实现类的接口,实现类接口仅提供基本操作,而抽象类定义的接口可能会做更多更复杂的操作6.3.4 ConcreteImplementor:具体实现类 实现类接口并且具体实

11、现它,在不同的具体实现类中提供基本操作的不同实现,在程序运行时,具体实现类对象将替换其父类对象,提供给客户端具体的业务操作方法7 适配器模式7.1 定义将一个类的接口转换成客户端所期望的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。7.2 UML图(1) 类版本结构图:(2) 对象版本结构图:7.3 角色功能该模式参与的角色有:7.3.1 Ta r g e t :C l i e n t使用的与特定领域相关的“接口”。7.3.2 C l i e n t:与符合Ta rg e t接口的对象协同的专业系统。7.3.3 A d a p t e e:一个已经存在的“接口”,它

12、具有Client要求的功能但不符合Client的接口要求。这个接口需要适配。7.3.4 A d a p t e r:对A d a p t e e的接口与Ta rg e t接口进行适配8组合模式8.1定义组合多个对象形成树形结构以表示“整体-部分”的结构层次。组合模式对单个对象(即叶子对象)和组合对象(即容器对象)的使用具有一致性。8.2 UML图模式结构8.3 角色功能 组合模式包含如下角色:8.3.1 Component: 抽象构件抽象构件为叶子构件和容器构件对象声明接口,在该角色中可以包含所有子类共有行为的声明和实现8.3.2 Leaf: 叶子构件叶子构件在组合结构中表示叶子节点对象,叶子

13、节点没有子节点8.3.3 Composite: 容器构件容器构件在组合结构中表示容器节点对象,容器节点包含子节点,其子节点可以是叶子节点,也可以是容器节点,它提供一个集合用于存储子节点,实现了在抽象构件中定义的行为9中介者模式9.1定义用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。9.2 UML图模式结构9.3角色功能中介者模式包含如下角色:9.3.1 Mediator: 抽象中介者抽象中介者用于定义一个接口,该接口用于与各同事对象之间的通信9.3.2 Concr

14、eteMediator: 具体中介者具体中介者是抽象中介者的子类,通过协调各个同事对象来实现协作行为,了解并维护它的各个同事对象的引用9.3.3 Colleague: 抽象同事类抽象同事类定义各同事的公有方法;具体同事类是抽象同事类的子类,每一个同事对象都引用一个中介者对象9.3.4 ConcreteColleague: 具体同事类每一个同事对象在需要和其他同事对象通信时,先与中介者通信,通过中介者来间接完成与其他同事类的通信;在具体同事类中实现了在抽象同事类中定义的方法10 抽象工厂模式10.1 定义10.2 UML图10.3角色功能10.3.1 AbstractFactory:抽象工厂:声

15、明生成抽象产品的方法10.3.2 ConcreteFactory:具体工厂:执行生成抽象产品的方法,生成一个具体产品10.3.3 AbstractProduct:抽象产品:为一种产品声明接口10.3.4Product:具体产品:定义具体工厂生成的具体产品的对象,实现产品接口10.3.5Client:客户-应用程序,使用抽象产品和抽象工厂生成对象11 简单工厂模式11.1 定义定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类,而简单工厂模式实质是由一个工厂类根据传入的参量,动态的决定应该创建出哪一个产品类的实例.11.2 UML图11.3角色功能11.3.1工厂角色:是简单工厂的核心,他负责实现创建所有实例内部逻辑.工厂类可以被外界直接调用,创建所需的产品对象11.3.2抽象产品角色:是简单工厂模式所创建的所有对象父类,他负责描述所有实例所共有的公共接口11.3.3具体产品角色:是简单工厂模式的创建目标,所有创建的对象都是充当这个角色的某个具体类的实例.

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1