
设计
文章平均质量分 83
iteye_5722
这个作者很懒,什么都没留下…
展开
-
UML(统一建模语言)入门级介绍
一 UML概况 统一建模语言(UML)是通用的可视化建模语言。尽管UML常常与建模OO软件系统相关联,但是由于它内建的扩展机制,它应用更加广泛。 UML被设计用来整合建模技术和软件工程领域中当前最好的实践。同样,它被明确设计成可由UML建模工具所实现。UML图是人类可读的,而且它也易于由计算机表现。 二UML发展历史图三 UML 2.0组成...2016-09-15 10:57:29 · 156 阅读 · 0 评论 -
享元模式一五子棋游戏
一模式定义享元模式,以共享的方式高效地支持大量的细粒度对象。通过复用内存中已存在的对象,降低系统创建对象实例的性能消耗。享元的英文是Flyweight,表示特别小的对象,即细粒度对象。 二模式举例1模式分析我们借用五子棋游戏来说明这一模式。2享元模式静态类图3代码示例3.1创建抽象棋子一AbstractChessmanpackage com.demo.fl...2016-10-15 10:09:45 · 397 阅读 · 0 评论 -
解释器模式——定义一种简单的语言
一 模式定义解释器模式:就是给定一个语言的文法表示,并且定义一个解释器,用来解释语言中的句子。解释器模式描述了怎样在有了一个简单的文法后,使用模式设计解释这些语句。 二模式举例1 模式分析我们自己设计一种语言来说明这一模式(1)该语言区分大小写(2)该语言以PROGRAM开头,END结尾(3)PRINTLN表示打印一行并换行(4)使用FOR…FROM…TO…E...2016-10-17 21:27:48 · 178 阅读 · 0 评论 -
迭代器模式一访问人员列表
一模式定义迭代器模式,提供了一种模式顺序访问一个集合对象中各个元素的功能,而又不暴露其内部的表示。 二模式举例1模式分析我们借用访问人员列表这一案例来说明这一模式。2迭代器模式静态类图 3代码示例3.1 人员信息接口——IPersonpackage com.demo.person;/** * 人员信息 * * @author * ...2016-10-18 20:03:50 · 120 阅读 · 0 评论 -
中介者模式一多人聊天室
一模式定义中介者模式,用一个中介对象来封装一系列对象之间的交互,使各个对象中不需要显示地引用其他对象实例,从而降低各个对象之间的耦合度,并且可以独立地改变对象间的交互关系。 二模式举例1模式分析我们借用多人聊天室来说明这一模式 2中介模式静态类图 3代码示例3.1中介者接口——IMediatorpackage com.demo.mediator;...2016-10-19 20:38:04 · 388 阅读 · 0 评论 -
策略模式一商场促销商品
一模式定义策略模式:定义一系列的算法,将每一种算法封装起来并可以相互替换使用,策略模式让算法独立于使用它的客户应用而独立变化。 二模式举例1模式分析我们借用商场促销商品来说明这一模式。 2策略模式静态类图 3代码示例3.1 创建策略接口一IStrategypackage com.demo.strategy;/** * 策略接口 * ...2016-10-20 21:54:34 · 305 阅读 · 0 评论 -
模板方法模式——每日的生活行为
一模式定义模板方法模式:定义一个操作中的算法骨架,而将一些实现步骤延迟到子类当中。模板方法使得子类在不改变算法结构的情况下,重新定义算法中的某些步骤。 二模式举例1模式分析我们借用每日生活行为来说明这一模式。2模板方法模式静态类图3代码示例3.1建立算法骨架一AbstractPeoplepackage com.demo.template;/** *...2016-10-21 21:17:34 · 156 阅读 · 0 评论 -
状态模式——文档编辑模式切换
一模式定义状态模式:当一个对象的内在状态改变时允许改变其行为,这个对象看起来就像是改变了其类。 二模式举例1模式分析我们借用文档编辑模式切换这一案例来说明这一模式。 2状态模式静态类图 3代码示例3.1创建状态接口一IStatepackage com.demo.state;import com.demo.context.Context;...2016-10-22 10:17:46 · 183 阅读 · 0 评论 -
观察者模式——气象局高温预警
一模式定义观察者模式,又称为发布/订阅模式。观察者模式定义了对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 二模式举例1 模式分析我们借用气象局高温预警来说明这一模式。 2观察者模式静态类图 3代码示例3.1观察者接口一IObserverpackage com.demo.observer;i...2016-10-23 10:53:23 · 230 阅读 · 0 评论 -
访问者模式——公司层级结构图
一模式定义访问者模式:是表示一个作用于某对象结构中各个元素的操作,它使用户可以在不改变各元素类的前提下定义作用于这些元素的新操作。 二模式举例1模式分析我们借用公司层级结构来说明这一模式。 2访问者模式静态类图 3代码示例3.1抽象员工一Staffpackage com.demo.structure;import com.demo.visito...2016-10-24 21:38:08 · 410 阅读 · 0 评论 -
代理模式——红酒经销
一模式定义在代理模式中,有两个对象参与处理同一请求,接收的请求由代理对象委托给真实对象处理,代理对象控制请求的访问,它在客户端应用程序与真实对象之间起到了一个中介桥梁的作用。代理模式使用对象聚合代替继承,有效地降低了软件模块之间的耦合度。 二模式举例1模式分析我们借用红酒经销来说明这一模式。 2代理模式静态类图 3代码示例3.1红酒工厂接口一IRedWin...2016-10-29 20:06:47 · 139 阅读 · 0 评论 -
备忘录模式——过关类游戏
一模式定义备忘录模式,在不破坏封闭的前提下,捕获一个对象的内部状态,并在该对象外部保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 二模式举例1模式分析我们借用过关类游戏来说明这一模式。 2备忘录模式静态类图 3代码示例(黑箱备忘录模式)3.1创建备忘录窄接口一INarrowMementopackage com.demo.memento;...2016-10-30 08:31:22 · 144 阅读 · 0 评论 -
命令模式——邮局发信
一模式定义命令模式,将来自客户端的请求封建为一个对象,无须了解这个请求激活的动作或有关接受这个请求的处理细节。命令模式的根本目的在于将"请求者"与"实现者"之间解耦。 二模式举例1模式分析我们借用邮局发信来说明这一模式。 2命令模式静态类图 3代码示例3.1信件接收者接口一IReceiver package com.demo.receiver;...2016-10-30 09:02:26 · 185 阅读 · 0 评论 -
外观模式——美食天下
一模式定义外观模式,是软件工程师常用的一种软件设计模式。它为子系统中的一组接口提供一个统一的高层接口,使子系统更容易使用。外观模式通过一个外观接口读/写子系统中的各接口的数据资源,而客户可以通过外观接口读取内部资源库,不与子系统产生交互。 二模式举例1模式分析我们借用美食天下菜谱中制作糖醋排骨这一道菜来说明这一模式。 2外观模式静态类图 3代码示例3.1创...2016-10-14 21:12:15 · 142 阅读 · 0 评论 -
装饰者模式一染色馒头
一模式定义 装饰者模式,是在不改变原类文件和使用继承的情况下,动态扩展一个对象功能,它是通过创建一个包装对象,也就是装饰来包装真实的对象。装饰对象和真实对象有相同接口,这样客户端对象就可以和真实对象相同方式和装饰对象交互。装饰对象包含一个真实对象的引用。二模式举例1模式分析我们借用黑心商贩制做染色馒头案例说明这一模式。2装饰者模式静态类图3代码示...2016-10-12 20:54:24 · 113 阅读 · 0 评论 -
最常用的UML静态图
最常用的UML静态图包括:用例图,类图,组件图,部署图。一 用例图1 用例图介绍用例图用于描述了系统提供的系列功能,而每个用例则代表系统的一个功能模块。用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的需求功能,用例图对系统的实现不做任何说明,仅仅是系统功能的描述。用例图主要在需求分析阶段使用,用于与客户交流,保证系统需求的无二性,用例图表示系统外...2016-09-15 11:11:56 · 720 阅读 · 0 评论 -
最常用的UML动态图
最常用的UML动态图有:顺序图、活动图、状态机图。一 顺序图1 顺序图介绍 顺序图显示具体用例(或者是用例的一部分)的详细流程,并且显示了流程中不同对象之间的调用关系,同时还可以很详细地显示对不同对象的不同调用。顺序图描述了对象之间的交互,重点在于描述消息及其时间顺序。 顺序图有两个维度:垂直维度以发生的时间顺序显示消息/调用的序列;...2016-09-15 18:09:50 · 793 阅读 · 0 评论 -
设计模式概述
一 软件设计遵循的基本原则1 高内聚,低耦合一个软件系统要有一个稳定的架构,不会随需求的改变而发生巨大的变动。因此,高内聚、低耦合是一个软件系统设计中必须遵循的基本原则。2 面向抽象编程在面向过程的软件开发中,上层组件调用下层组件,就意味着上层组件依赖于下层组件,当下层组件发生剧烈变化时,上层组件也要跟着一起发生变动,这将导致软件组件模块的复用性大大降低,从而增加软件开发成本,使软件结构设计上存...2016-09-20 20:36:36 · 96 阅读 · 0 评论 -
工厂方法模式应用
一 模式定义一个创建产品对象的工厂接口,让子类决定实例化哪一种实例对象,也就是将实际创建实例对象的工作推迟到子类当中,核心工厂类不再负责具体产品的创建。 二 模式举例1 模式分析我们借用三国中曹操献刀来说明这一模式的运用。抽象之后的关系如下图。 2 工厂方法模式的静态建模大司徒王允—生成宝刀的抽象工厂校尉曹操—具体工厂生产七星宝刀各类宝刀—抽象产品七...2016-09-21 20:30:57 · 152 阅读 · 0 评论 -
组合模式——公司组织结构
一 模式定义组合模式:将对象组合成树形结构以表示“部分一整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。 二 组合模式举例1 模式分析我们借用公司组织结构图来说明这一模式。经过分析后,我们得出该模式静态类图如下: 2代码示例2.1建立员工抽象类package com.demo.composite;/** * 职工类接口 * * @aut...原创 2016-09-26 00:33:17 · 292 阅读 · 0 评论 -
抽象工厂模式——肯德基消费
一 模式定义抽象工厂模式提供了一个接口,用于创建相关或者依赖对象的家族,而不需要指定具体实现类。抽象工厂模式允许客户使用抽象接口来创建一组相关的产品,客户类和工厂类分开,客户需要任何产品的时候,只需要向工厂请求即可,客户无须修改就可以获得新产品。二 模式举例1 模式分析我们借用爸爸和儿子到肯德基店消费这一场景来说明这一模式,进行抽象分析后的截图如下2 抽象工厂模式的静态建模 3...2016-09-26 21:26:02 · 171 阅读 · 0 评论 -
单例模式
一 模式定义1 某个类只能有一个实例。2 该类必须自行创建这个实例。3 该类必须自行向整个系统提供这个实例。 二单例模式举例1 模式分析 2 使用同步线程安全创建单例对象package com.demo.singleton;public class Singleton { // 类共享实例对象 实例化 private static Singleton single...2016-09-28 20:21:44 · 76 阅读 · 0 评论 -
原型模式应用——展现每日生活
一 模式定义用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。 二 模式举例1模式分析我们借用每日上班情景耒说明这一模式。2故事情节分析图 3原型模式静态建模 4代码示例4.1原型建立package com.prototype.pojo;/** * 日常生活类 * * @author * */public class DayLife...2016-09-28 20:41:56 · 135 阅读 · 0 评论 -
多例设计模式
一 多例设计模式定义多例设计模式就是存在多个对象实例,供外部应用裯用,比喻数据库连接池。 二多例模式静态类图 三多例模式代码实现1多例模式核心类package com.demo.multipleton;import java.util.ArrayList;/** * 多例模式 * * @author * */public class M...2016-09-29 06:54:41 · 119 阅读 · 0 评论 -
桥接模式——开关和电灯照明
一模式定义桥接模式,也称桥梁模式,在软件系统中,由于自身的逻辑,具有两个或多个维度的变化,如何应对这种多维度的变化,桥接模式使得软件系统能够轻松地沿着多个方向进行变化,而又不引入额外的复杂度。桥接模式三个关键词为:抽象化,实现化,脱耦 二模式举例1 桥接模式分析方法我们借用电灯照明来说明该模式。不使用继承,使用对象组合的方式,将开关和电灯的强关联关系变成弱关联关系。...2016-09-30 21:31:05 · 273 阅读 · 0 评论 -
适配器模式应用——电源适配器
一模式定义存在两种适配器模式1 对象适配器模式,在这种适配器模式中,适配器容纳一个它包裹的类对象的物理实体。2 类适配器模式,在这种适配器模式中,适配器继承自已实现的类。二模式举例1模式分析我们借用笔计本电源适配器来说明这一模式。已经存在的交流电源笔记本电脑电源适配器 2适配器模式的静态建模 3代码举例3.1抽象电源建立package...2016-09-30 22:23:04 · 217 阅读 · 0 评论 -
建造者模式——办理手机套餐
一模式定义建造者简单理解就是造东西,只不过建造者模式建造的不是一个简单的东西,是一个比较复杂的东西。 二模式举例1模式分析我们借用顾客到手杌营业厅去办理手机套餐的例子说明这一模式经过抽象分析后,我们得出下面信息客户张三——终端需求营业厅操作员——指导者(通知指导建造者生产什么样的手机套餐)计算机——建造者(建造各种手机套餐)手机套餐——产品 2建造...2016-10-01 07:47:15 · 184 阅读 · 0 评论 -
责任链模式——学生请假
一模式定义在责任链模式中,很多对象由每一个对象对其下家的引用而连接起来,形成一条链。客户端应用请求在这个链上进行传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪个对象最终处理这个请求,这使系统可以在不影响客户端的情况下动态地重新组织链和分配责任。(1)抽象处理者角色:定义出一个处理请求的接口。如果需要,接口可以定义出一个方法,以设定和返回下家的引用。这个角色...2016-10-31 21:02:46 · 465 阅读 · 0 评论