设计模式汇总

2016-01-29 13:29 6 1 收藏

设计模式汇总,设计模式汇总

【 tulaoshi.com - PHP 】

转自:http://www.cnblogs.com/team/DesignPattern.html

1、FACTORY一追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说来四个鸡翅就行了。麦当劳和肯德基就是生产鸡翅的Factory

    工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。

    2、BUILDERMM最爱听的就是我爱你这句话了,见到不同地方的MM,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到MM我只要按对应的键,它就能够用相应的语言说出我爱你这句话了,国外的MM 也可以轻松搞掂,这就是我的我爱你builder。(这一定比美军在伊拉克用的翻译机好卖)

    建造模式:将产品的内部表象和产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象的产品对象。建造模式使得产品内部表象可以独立的变化,客户不必知道产品内部组成的细节。建造模式可以强制实行一种分步骤进行的建造过程。

    3、FACTORY METHOD请MM去麦当劳吃汉堡,不同的MM有不同的口味,要每个都记住是一件烦人的事情,我一般采用Factory?Method模式,带着MM到服务员那儿,说要一个汉堡,具体要什么样的汉堡呢,让MM直接跟服务员说就行了。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/php/)

    工厂方法模式:核心工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类去做,成为一个抽象工厂角色,仅负责给出具体工厂类必须实现的接口,而不接触哪一个产品类应当被实例化这种细节。

    4、PROTOTYPE跟MM用QQ聊天,一定要说些深情的话语了,我搜集了好多肉麻的情话,需要时只要copy出来放到QQ里面就行了,这就是我的情话prototype了。(100块钱一份,你要不要)

    原始模型模式:通过给出一个原型对象来指明所要创建的对象的类型,然后用复制这个原型对象的方法创建出更多同类型的对象。原始模型模式允许动态的增加或减少产品类,产品类不需要非得有任何事先确定的等级结构,原始模型模式适用于任何的等级结构。缺点是每一个类都必须配备一个克隆方法。

    5、SINGLETON俺有6个漂亮的老婆,她们的老公都是我,我就是我们家里的老公Sigleton,她们只要说道老公,都是指的同一个人,那就是我(刚才做了个梦啦,哪有这么好的事)

    单例模式:单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例单例模式。单例模式只应在有真正的单一实例的需求时才可使用。

    结构型模式

    6、ADAPTER在朋友聚会上碰到了一个美女Sarah,从香港来的,可我不会说粤语,她不会说普通话,只好求助于我的朋友kent了,他作为我和Sarah之间的Adapter,让我和Sarah可以相互交谈了(也不知道他会不会耍我)

    适配器(变压器)模式:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口原因不匹配而无法一起工作的两个类能够一起工作。适配类可以根据参数返还一个合适的实例给客户端。

    7、BRIDGE早上碰到MM,要说早上好,晚上碰到MM,要说晚上好;碰到MM穿了件新衣服,要说你的衣服好漂亮哦,碰到MM新做的发型,要说你的头发好漂亮哦。不要问我早上碰到MM新做了个发型怎么说这种问题,自己用BRIDGE组合一下不就行了

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/php/)

    桥梁模式:将抽象化与实现化脱耦,使得二者可以独立的变化,也就是说将他们之间的强关联变成弱关联,也就是指在一个软件系统的抽象化和实现化之间使用组合/聚合关系而不是继承关系,从而使两者可以独立的变化。

    8、COMPOSITEMary今天过生日。我过生日,你要送我一件礼物。嗯,好吧,去商店,你自己挑。这件T恤挺漂亮,买,这条裙子好看,买,这个包也不错,买。喂,买了三件了呀,我只答应送一件礼物的哦。什么呀,T恤加裙子加包包,正好配成一套呀,小姐,麻烦你包起来。,MM都会用Composite模式了,你会了没有?

来源:http://www.tulaoshi.com/n/20160129/1490328.html

延伸阅读
标签: 游戏动漫
《实况足球2015》MC模式个人心得汇总 《实况足球2015》中很多玩家非常喜欢MC模式,下面图老师图老师小编介绍的是玩家分享的关于MC模式的个人心得,供其他玩家参考。 我的是PS3港版,以下内容和重要建议是否支持PS4确实不清楚。 首先发一下自己的阵容 ,其中还有几个80多的在2队,包括什么81的弗莱彻之类,因为教练技巧点不够,不能放在主力...
很多的J2EE应用程序需要使用持久性数据(数据库、文件等)。不同的程序,持久性存储是各不相同的,并且用来访问这些不同的持久性存储机制的API也有很大的不同。假如应用程序要在不同的持久性存储间迁移,这些访问特定持久存储层的代码将面临重写。 !-- frame contents -- !-- /frame contents -- 如何解决这个问题?且...
标签: PHP
上一节:《PHP设计模式介绍》第四章 单件模式 《PHP设计模式介绍》第五章 注册模式 我们通常认为避免使用全局变量是一种好的选择,因此,对象经常被作为参数从一段代码传递到另一段。但是传递实例的一个问题就是对象有时候不知道将要传递给谁?经过一个函数后才被传递到真正需要这个对象的函数。 为了编写,阅读,修改代码的方便,最好能够...
标签: PHP
上一节:《PHP设计模式介绍》第九章 观测模式 《PHP设计模式介绍》第十章 规范模式 在一个应用软件的成型过程中,一些意想不到的商业逻辑到处出现。比如,基于价格的考虑,这个任务必须减少项目;而那个任务也因为销售税而必须选择合适的比率;而其它的任务也必须因为其他的特别条件而终止。一些商业规则是简单的,只需要不到一两个布尔...
标签: PHP
    个人认为在23个经典模式中VISITOR是比较难理解的一个,所以决定先讲讲自己对VISITOR的理解。因为马哲认为对事物的认识是从具体到抽象的一个过程,所以在谈理论之前先说一个例子是必要的。这个例子不是实际应用,但我想它还算生动,是个记忆VISITOR模式的好例子吧。     英国、美国都有自己的核武机...

经验教程

888

收藏

31
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部