设计模式
flysnail2007
这个作者很懒,什么都没留下…
展开
-
职责链模式
职责链模式其实是对行为的执行的传递,是对某个动作执行的方向更具相关的条件做出决定。从下图中可以理解其的应用[img]http://dl.iteye.com/upload/attachment/519256/cecd78ea-a0ce-308d-a91a-79832daadb2a.gif[/img]抽象处理者(Handler)角色:定义出一个处理请求的接口。如果需要,接口可以定义出一...2011-07-18 00:55:32 · 94 阅读 · 0 评论 -
资源管理中的模式
在系统中实现资源管理时必须用到的设计方法很大程度上取决于领域,系统的约束和系统需求。模式抽象自特定的领域,并且受系统需求和需求驱使。根据系统的性能,可伸缩性,可预测性,灵活性,稳定性,一致性等特点来对应以下模式。1.性能 Eager Acquistion 模式有助于加快第一次资源访问,从而加快整个系统的响应速度。 Caching模式通过避免对常资源的昂贵的重复获取操...原创 2009-12-13 12:07:05 · 201 阅读 · 0 评论 -
对设计模式—Composite模式的认识
Composite模式定义:将对象以树形结构组织起来,以达成“部分-整体” 的层次结构,使得客户端对单个对象和组合对象的使用具有一致性.Composite好处:1.使客户端调用简单,客户端可以一致的使用组合结构或其中单个对象,用户就不必关系自己处理的是单个对象还是整个组合结构,这就简化了客户端代码。2.更容易在组合体内加入对象部件. 客户端不必因为加入了新的对象部件而更改代码...2008-05-08 11:35:40 · 91 阅读 · 0 评论 -
对设计模式—Command模式的认识
今天抽空看了一下Command 模式,Command 模式涉及了五个角色它们分别是:客户(Client)角色:创建了一个具体命令(ConcreteCommand)对象并确定其接收者。 命令(Command)角色:声明了一个给所有具体命令类的抽象接口。这是一个抽象角色。 具体命令(ConcreteCommand)角色:定义一个接受者和行为之间的弱耦合;实现Execute()方法,负责调用...2008-04-29 18:09:27 · 75 阅读 · 0 评论 -
对设计模式—Template模式的认识
Template 模式其实是在抽象类中定义业务逻辑了和方法,具体的方法在子类中去实现。一个集团下属有几个公司,年底到了公司的财务结算的时候,最后几个下属公司把利润送到集团的财务科报帐,具体怎么财务结算的由几个下属公司去操作。[code="java"]public abstract class Template{ protected abstract void chec...2008-04-22 17:26:46 · 71 阅读 · 0 评论 -
对设计模式—Bridge模式的认识
Bridge将抽象和行为划分开来,各自独立,可以动态结合变换.随着社会的发展,交通要求便利,汽车成为交通的主要工具,有车可以加汽油,也可以加柴油.[code="java"]public abstract class Car{ public CarImp carImp; public abstract void buyOil(); publi...2008-04-17 10:14:22 · 97 阅读 · 0 评论 -
对设计模式—Flyweight模式的认识
单纯享元模式所涉及的角色如下:抽象享元(Flyweight)角色:此角色是所有的具体享元类的超类,为这些类规定出需要实现的公共接口。那些需要外蕴状态(External State)的操作可以通过调用商业方法以参数形式传入。具体享元(ConcreteFlyweight)角色:实现抽象享元角色所规定的接口。如果有内蕴状态的话,必须负责为内蕴状态提供存储空间。享元对象的内蕴状态必须与对象所处...2008-04-14 19:51:15 · 77 阅读 · 0 评论 -
对设计模式—proxy模式的认识
今天很忙,出去吃饭都没有时间,只好把钱给同事捎带一份了[code="java"]public class BuyMeal { private static BuyMeal buyMeal = new BuyMeal(); private static BuyMeal getInstance() { ...2008-04-10 17:58:32 · 74 阅读 · 0 评论 -
对设计模式—Singleton模式的认识
在过去取老婆可以三妻六妾,不过现在有了法律规定一人只能一妻。[code="java"]public class Wife{ private static Wife wife = new Wife(); public static Wife getWife() { return wife; } private Wif...2008-04-09 15:36:33 · 103 阅读 · 0 评论 -
对设计模式—Adapter模式的认识
人在生活中有时担任一种角色,有时候要担任好几种。比如做软件开发,公司大点的,有开发人员也有测试人员分工细化、明确,公司小的,为了节约成本,开发人员既开发又测试。[code="java"]public interface ITestEngineer{ public void doTest();}public class TestEngineer implements...2008-04-08 12:49:21 · 76 阅读 · 0 评论 -
对设计模式—Factory Method模式的认识
上次看了一下abstact factory,今天又看了一下Factory Method FactoryMethod 往往只是创建单个的实例。Abstract Factory 创建一系列的实例组,这些实例彼此相关。[code="java"]public interface Fruit{ public void buy();}public class Apple im...2008-04-07 11:35:18 · 82 阅读 · 0 评论 -
对设计模式—Facade模式的认识
这几天忙的不得了啊,今天抽时间看了Facade模式,大家也许在开发中不知不觉的就用到了,就象你去买水果一样,如果你让卖水果的人给的话,你只要告诉他名字就行了,不要关心它长的啥样的.[code="java"]public interface Fruit{ public void println();}public class Apple implements Fru...2008-04-03 18:32:38 · 69 阅读 · 0 评论 -
对设计模式—Observer模式的认识
今天上班偷偷的把qq打开了,一会收到许多群里发的消息,这让我想到了Observer模式。 Observer模式的功用,是希望两个(或多个)对象,我们称之为Subject和Observer,当一方的状态发生改变的时候,另一方能够得到通知。也就是说,作为Observer的一方,能够监视到Subject的某个特定的状态变化,并为之做出反应。我对观察者理解就是一个中心点把所有变化的信息都收集上来,...2008-03-25 22:17:01 · 85 阅读 · 0 评论 -
对设计模式—Abstract Factory模式的认识
现在公司搬家了,吃饭都成了问题,每次得跑到外面去吃,走到一个小吃店都不知道吃什么,只好点了个盖交饭.其实厨房就相当与Factory ,你想吃什么就给你炒什么.[code="java"]public interface Vegetables{ public void cooking();}public class MeatVegetables implements ...2008-03-24 23:24:46 · 86 阅读 · 0 评论 -
对设计模式—Decorator模式的认识
今天星期一,上班迟到了,走到办公室打开电脑就工作,抽空学习一下Decorator模式,电脑慢了啊,怎么办啊,内存才1G,电脑里的元器件都是做好的,又不能优化,只好给它加条内存.[code="java"]public interface Work { public void start();}public class ComputerWork implements...2008-03-24 19:06:46 · 99 阅读 · 0 评论 -
Visitor模式
有些服务操作的对象结构比较复杂,服务的实现分在定义的对象结构种的各个类中,难于维护以及升级,,使用一个独立的Visitor类实现服务,针对对象结构中的每个类根据其类型的不同实现不同的行为(方法重载)。对定义对象结构的类进行扩展,每个类增加一个方法用来接收Visitor对象,并且在这个方法中根据自身的类型回调并执行Vistro的相应方法。 简易图如下:[img]http://dl.ite...2011-08-04 13:07:05 · 104 阅读 · 0 评论