![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 85
techlgwjda
这个作者很懒,什么都没留下…
展开
-
模版方法模式
10.1 辉煌工程——制造悍马 周三,9:00,我刚刚坐到位置上,打开电脑准备开始干活。 “小三,小三,叫一下其他同事,到会议室,开会”,老大跑过来吼,带着坏笑。还没等大家坐稳,老大就开讲了: “告诉大家一个好消息,昨天终于把牛叉模型公司的口子打开了,要我们做悍马模型,虽然是第一个车辆模型,但是我们有能力、有信心做好,我们一定要……(中间省略20分钟的讲话,转载 2014-09-25 16:15:39 · 460 阅读 · 0 评论 -
建造者模式
11.1 变化是永恒的 又是一个周三,快要下班了,老大突然拉住我,喜滋滋地告诉我:“牛叉公司很满意我们做的模型,又签订了一个合同,把奔驰、宝马的车辆模型都交给我们公司制作了,不过这次又额外增加了一个新需求:汽车的启动、停止、喇叭声音、引擎声音都由客户自己控制,他想什么顺序就什么顺序,这个没问题吧?” 看着老大殷切的目光,我还能说啥?非常肯定地点头,“没问题!”,加班转载 2014-09-25 16:14:53 · 482 阅读 · 0 评论 -
策略模式 VS 桥梁模式
这对冤家终于碰头了,策略模式与桥梁模式是如此相似,简直就是孪生兄弟,要把它们两个分开需要花费大量智力,我们来看看两者的通用类图,如图33-1所示。图33-1 策略模式(左)和桥梁模式(右)通用类图 什么?你没有看出两者之间很相似?如果把策略模式的环境角色变更为一个抽象类加一个实现类,或者桥梁模式的抽象角色未实现,只有修正抽象化角色,想想看,这两个类图有什么地方不一样转载 2014-09-25 16:19:27 · 439 阅读 · 0 评论 -
原型模式【上】
现在电子账单越来越流行了,比如你的信用卡,到月初的时候银行就会发一份电子邮件到你邮箱中,说你这个月消费了多少,什么时候消费的,积分是多少等等,这是每个月发一次,还有一种也是银行发的邮件你肯定非常有印象:广告信,现在各大银行的信用卡部门都在拉拢客户,电子邮件是一种廉价、快捷的通讯方式,你用纸质的广告信那个费用多高呀,比如我行今天推出一个信用卡刷卡抽奖活动,通过电子账单系统可以一个晚上发送给600万客转载 2014-09-25 16:18:36 · 467 阅读 · 0 评论 -
原型模式【下】
原型模式的定义 原型模式(Prototype Pattern)的简单程度是仅次于单例模式和迭代器模式,正是由于简单,使用的场景才非常的多,其定义如下: Specify the kinds of objects to create using a prototypical instance, and create new objects by copying this prototyp转载 2014-09-25 16:19:41 · 460 阅读 · 0 评论 -
解释器模式
27.1 四则运算你会吗 在银行、证券类项目中,经常会有一些模型运算,通过对现有数据的统计、分析而预测不可知或未来可能发生的商业行为。模型运算大部分是针对海量数据的,例如建立一个模型公式,分析一个城市的消费倾向,进而影响银行的营销和业务扩张方向,一般的模型运算都有一个或多个运算公式,通常是加减乘除四则运算,偶尔也有指数、开方等复杂运算。具体到一个金融业务中,模型公式是非常复杂的,虽然转载 2014-09-25 16:18:01 · 459 阅读 · 0 评论 -
抽象工厂模式
9.1 女娲的失误 我们在上一章节讲了女娲造人的故事。人是造出来了,世界也热闹了,可是低头一看,都是清一色的类型,缺少关爱、仇恨、喜怒哀乐等情绪,人类的生命太平淡了,女娲一想,猛然一拍脑袋,哇K!忘记给人类定义性别了,那怎么办?抹掉重来,于是人类经过一次大洗礼,所有的人种都消灭掉了,世界又是空无一物,寂静而又寂寞。 由于女娲之前的准备工作花费了非常大的精力,比如准备黄土转载 2014-09-25 16:14:44 · 436 阅读 · 0 评论 -
代理模式
12.1 我是游戏至尊 2007年,感觉很无聊,于是就玩了一段时间的网络游戏,游戏名就不说了,要不就有做广告的嫌疑,反正就是打怪、升级、砍人、被人砍,然后继续打怪、升级、打怪、升级······我花了两个月的时间升级到80级,已经很有成就感了,但是还被人杀死,高手到处都是,GM(Game Master,游戏管理员)也不管,对于咱这种非RMB玩家基本上都是懒得搭理。在这段时间我是体会到网转载 2014-09-25 16:12:29 · 438 阅读 · 0 评论 -
规格模式
37.1 规格模式的实现 不知道诸位有没有使用C#3.5做过开发,它有一个非常重要的新特性——LINQ(Language INtegrated Query,,语言集成成查询), 它提供了类似于 SQL 语法的遍历、筛选等功能,能完成对对象的查询,就像通过SQL语句查询数据库一样,例如这样的一个程序片段:123Dim DataL转载 2014-09-25 16:18:47 · 1440 阅读 · 0 评论 -
工厂方法模式
8.1 女娲造人的故事 东汉《风俗通》记录了一则神话故事:“开天辟辟,未有人民,女娲搏,黄土作人……”,讲述的内容就是大家非常熟悉的女娲造人的故事。开天辟地之初,大地上并没有生物,只有苍茫大地,纯粹而洁净的自然环境,寂静而又寂寞,于是女娲决定创造一个新物种(即人类)来增加世界的繁荣,怎么制造呢? 别忘了女娲是神仙,没有办不到的事情,造人的过程是这样的:首先,女娲采集转载 2014-09-25 16:17:13 · 424 阅读 · 0 评论 -
策略模式的扩展——策略枚举
各位,我给大家出个小学的题目:输入3个参数,进行加减法运算,参数中两个是int型的,剩下的一个参数是String型的,只有“+”,“-”两个符号可以选择,不要考虑什么复杂的校验,我们做的是白箱测试,输入的就是标准的int类型和合规的String类型,各位大侠,想想看,怎么做,简单得很! 有非常多的实现方式,我今天来说四种,先说第一种,写一个类,然后进行加减法运算,类图也不用画了,太简单了转载 2014-09-25 16:10:45 · 793 阅读 · 0 评论 -
单例模式
7.1 我是皇帝我独苗 自从秦始皇确立了皇帝这个位置以后,同一时期基本上就只有一个人孤零零的坐这个位置。这种情况下臣民们也好处理,大家叩拜、谈论的时候只要提及皇帝,每个人都知道指的是谁,而不用在皇帝前前面加上特定的称呼,如张皇帝,李皇帝。这一个过程反应到设计领域就是,要求一个类只能生成一个对象(皇帝),所有对象对它的依赖都是相同的,因为只有一个对象,大家对它的脾气和习性都非常了解,建立转载 2014-09-25 16:03:54 · 445 阅读 · 0 评论