设计模式
文章平均质量分 92
游坦之
凡物之骤为之而追成焉者,其器小也;物之一览而易尽者,其中无有也。
展开
-
【设计模式】装饰者模式:以造梦西游的例子讲解一下装饰者模式,这也是你的童年吗?
众所周知,造梦西游3有四个角色,也就是师徒四人,这师徒四人每个人都有自己专属的武器和装备。假定我们以及设计出来了Role(角色类),并通过继承的方式创造出来了师徒四人的角色(这里只写两个)。那么这时候问题来了,如果给角色增加一个武器,该怎么实现呢》我想你头脑中第一印象会想到继承如下,创建两个武器九尺钉耙和金箍棒这样九尺钉耙和金箍棒就和角色联系起来了,这时候你可以很清晰的发现,如果在增加一个武器,如月牙弓,你就需要分别创建两个子类。如果再增加一个新角色,如沙僧的话,又要增加更多的子类,这实在是太麻烦。原创 2022-11-20 23:53:58 · 1983 阅读 · 82 评论 -
【设计模式】适配器模式:攻敌三分,自留七分,以超兽武装的例子来谈谈适配器模式
将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能在一起工作的那些类能一起工作。适配器模式分为类适配器模式和对象适配器模式,前者类(类适配器)之间的耦合度比后者高,而且要求程序员了解现有组件库中的相关组件的内部结构,所以应用相对少一些。原创 2022-11-17 09:15:06 · 1557 阅读 · 95 评论 -
【设计模式】原型模式:猴头,我叫你一声你敢答应吗?
原型模式是一种,用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。原型模式允许一个对象再创建另外一个可定制的对象,无须知道任何创建的细节。原型模式的基本工作原理是通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象复制原型来实现创建过程。原创 2022-11-13 13:23:59 · 1353 阅读 · 92 评论 -
【设计模式】以国足的例子来解释代理模式,希望自己不要被退钱
在本例子中,抽象角色就是Cup,真实角色就是国足FootballTeam,国足要冲出亚洲,但是没有那个能力。于是让代理角色"外援"进来帮助我们,外援代理可以让国足冲出亚洲,同时还有一些附属操作:不吃海参、刻苦训。,身为客户的我们,就可以看到一场惊魂动魄的比赛,"外援"和国足球员同心合力,最终冲出亚洲!通过引入一个新的对象来实现对真实对象的操作或者将新的对象作为真是对象的一个替身,这种机制被称为代理模式。最终国足成功冲出了亚洲,但是国足真的有这个实力吗?可是,我们知道国足还是国足,但是我们不再是我们。原创 2022-11-06 21:30:15 · 2394 阅读 · 62 评论 -
设计模式之桥接模式
(Bridge Pattem):将和分离,使它们都可以独立地变化。它是一种,又称或者。原创 2022-10-16 17:05:50 · 912 阅读 · 52 评论 -
设计模式之建造者模式
建造者模式(Builder Patten):将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式用于一步一步创建一个复杂的对象,他允许用户只通过指定复杂对象的类型和内容进行构建,用户不需要知道内部的具体构建细节。建造者模式属于对象创建型模式,根据翻译的不同,建造者模式又可称为生成器模式。原创 2022-10-05 21:55:42 · 873 阅读 · 18 评论 -
【GOF】三种工厂模式~
简单工厂模式是属于创建型模式,又叫做静态工厂方法模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。在开发过程中非常实用。简单工厂可以根据传入的参数不同,返回不同类的实例简单工厂模式中,简单工厂类负责创建其他类的实例,其他类通常都具有共同的父类工厂方法模式是一种常用的类创建型设计模式,此模式的核心精神是封装类中变化的部分。原创 2022-09-29 17:06:29 · 1016 阅读 · 13 评论