设计模式系列
文章平均质量分 74
Sanjay_f
这个作者很懒,什么都没留下…
展开
-
设计模式系列1---独当一面的单例
在开始写之前我想吐槽下CSDN! 源码探索系列6和14居然不见了,上次找版主去找回一次别的文章!这次居然跑了两篇,服务器要高可用啊! 现在还记得14写的内容是HandleThread,但第六篇那么久那里还记得写的是哪篇,想补都补不回来了!我很怀疑这CSDN的人自己都不用这个来写文章的,写文章过程遇到一堆bug也没改进下! 整个CSDN的博客产品线一点真的都不用户友好,设计逻辑上一堆乱起八糟的原创 2015-12-30 00:24:01 · 672 阅读 · 0 评论 -
设计模式系列19---可复原的备忘模式
玩游戏我们都知道有个东西叫自动存档,在我们遇到大Boss要打的时候,更是如此,一定要存档! 如果没有存档,死了就要你重新开始,如果是些大型游戏,已经花费了你很多时间,遇到大Boss,然后你被打死了,又没有存档,估计你就想直接把这个游戏卸载了。有时偷懒,还去下载别人的通关档案回来覆盖本地的。 哈,我就曾经做过!还有一些已经刷满无限金币等的存档! 曾经还遇到过必须被大Boss打死才能继续的剧情,但原创 2016-01-05 13:41:29 · 699 阅读 · 0 评论 -
设计模式系列18---有状态的状态模式
今天我们来聊聊个红绿灯,我们知道有个口诀叫: 红灯停 绿灯行 黄灯亮了等一等但这不是我们关注的重点,我们关注的点是我们红绿灯的状态!一般是 绿灯 -> 黄灯-> 红灯 的顺序。 绿灯能且只能跑到黄灯 黄灯能且只能跑到红灯 红灯能且只能跑到绿灯不过曾经深圳尝试改革,直接从绿灯跳成了红灯,消失一出,当时一片哗然,在试行了一段时间后,发现不妥就又恢复了。所以现在我们原创 2016-01-05 13:40:47 · 1059 阅读 · 0 评论 -
设计模式系列17---深入了解的访问者模式设计模式系列17---深入了解的访问者模式
我们有巡视组,他的主要工作就是巡视各个地方的一些重要点,看下他们的工作展开情况,整个巡视过程对重点对象深入的调查,如调阅、复制有关文件、档案、会议记录等资料;以适当方式对被巡视地区、单位的下属单位或者部门进行走访调研;听取被巡视地区、单位党委(党组)的工作汇报和有关部门的专题汇报;除了上面的,还有别的很多内容,所以我们的巡视组可以对被调查对象有深入的了解,如果有猫腻也可以很快的被发现。那么问原创 2016-01-05 13:40:04 · 793 阅读 · 0 评论 -
设计模式系列16---响应请求的责任链模式
所谓责任落实到位,落实到人,就是要找对特定事情有处理权限的人。我们以法院为例子,小事情就在基层人民法院处理了,大一点的事情就找地市级的中级法院,如果事情闹大的就省级的高级人民法院,如果这事件特别重大,那就是最高人民法院了。所以我们看下四个级别: 最高人民法院 > 高级人民法院 > 中级人民法院 > 基层人民法院那么问题来了,当年窦娥冤情换成现在是归谁管呢?可以跳级跑去告御状吗? 代码实现现在我原创 2016-01-04 17:16:44 · 833 阅读 · 0 评论 -
设计模式系列15---构表分离的建造者模型
现在来讲一件很有意思的故事,上面的画很纯洁,只有一种蓝色。但不得不说这图片还是有色差,不能很好的还原实际的色彩,如果有你机会,可以去看下他的IKB色彩是多么的蓝。 这种蓝被叫做国际克莱因蓝(international klein blue,缩写IKB),以伊夫·克莱因(Yves Klein)的名字来命名的。这一种独特的天青石蓝色是在他的化学家友人EdouardAdam的帮助下合成的。 克莱因相信原创 2016-01-04 17:15:50 · 823 阅读 · 0 评论 -
设计模式系列14---管流程不管细节的模板方法模式
写了这么久,花的时间最多的是在选故事,找图上,写一篇能看的文章真的不容易啊。 今天来介绍一款“高端智能”的机器人—炒菜机器侠。 一个可以会帮我们炒菜的机器人,懒人必备,价格不要你的2999,不要1999,只要899! 心动了嘛?赶紧拿起手头的手机,扫码购买吧!我们的炒菜机器人,只要你给他材料,就可以煮出你想要的菜。什么扬州炒饭,潮州炒饭都不是问题!好了,上面是一个引入的介绍,我们来看下实际的内原创 2016-01-04 01:00:24 · 941 阅读 · 0 评论 -
设计模式系列13---感知变化的观察者模型
电影《模仿游戏》中,讲述了我们的计算机科学之父图灵通过制造背后那个大机器,来协助盟军破译德国密码系统“英格玛”,从而扭转二战战局的经历。如果没图灵用这大机器来破译情报,知道敌军动向,估计整个二战战局可能都被改写! 尽管历史没假设,事实就是事实。今天我们要说的观察者就是这样的功效,他监视着被观察者,一有什么风吹草动就打报告。代码实现有了上面这个故事背景,我们该来怎么模拟这个过程呢?先来看下我们图灵哥原创 2016-01-03 23:19:55 · 837 阅读 · 0 评论 -
设计模式系列12---遍历统一的迭代模式
对于迭代这件事,我们曾经遇到过很多类似的事情,例如:上课点名!!!每次我们的课室存储了一堆的学生对象,然后老师开始迭代名单–点名, 判断某学生是否来上课了,没来的平时分给你扣点,积少成多,考试就压力大了。大学时代满满的回忆啊。代码实现看了这么一个简单的案例故事,我们该怎么用代码实现呢? 首先我们来定义下我们的课室,我们的课室储存了很多的学生小朋友。public class ClassRoom<原创 2016-01-03 21:26:09 · 637 阅读 · 0 评论 -
设计模式系列11---快速拷贝的原型模型
早年一直有新闻报道,XXX拖欠农民工工资的情况,甚至没有和员工签订合同的。这种做法当然不好,但现实也是挺残酷的,上门为了利润,就这么做,能省就省,遇到什么工伤之类的都不用赔,因为没有合同,你怎么说工伤呢? 这和大公司开一家小公司,去做特定的项目类似,规避风险。假设我们有一份 重要的合同,需要一式两份保存,每人个一份。 这时候我们要快速的备份一份,因为内容完全一样,这时候就可以用原型模型代码实现我原创 2016-01-03 00:51:22 · 962 阅读 · 0 评论 -
设计模式系列9---和而不同的工厂方法模式
现在的手机制造业,在高度的繁荣发展后,流水线的工作基础,吸引了很多厂商为了压低成本,搞一些odm的手机,就是在一个模版的基础上,改下壳,换个商标的样子,就开发布会,说有新的手机!大家快带上你的钱来买,卖得好不好,纯靠营销能力啊。例如下面的,某情怀和某米的手机,是不是很一样啊? 改一改又是一部手机! 那么,作为工厂,应该怎么搞呢?代码实现我们设计出这个工厂的基本方法 public class Pho原创 2016-01-02 13:45:47 · 622 阅读 · 0 评论 -
设计模式系列10---高度定制的抽象工厂方法模式
上一篇我们介绍了关于使用公模做手机的事情,但有个问题就是不能高度定制,现在我们来介绍下我的抽象工厂方法,他可以做到的定制就很高啦,既可以造飞机,汽车,又可以做苹果手机等等。一般能处理这类问题的,都是些大厂家,这类大厂家就很规范,分工明确的,而且也有很多流水线,代工不少产品,为了降低风险同时提营业额嘛,好懂。假设有一家叫 NiuBi 的公司,他很厉害,有多条流水线,一条生产火箭,一条生产苹果机,一条生原创 2016-01-02 18:09:01 · 674 阅读 · 0 评论 -
设计模式系列4---对外包办的门面模型
说到门面这个词, 在我国的文化就很有内涵啦! 不过Facade 这个词有时候翻译为外观。 到底该怎么理解这个门面模型呢?我们可以看一个公司的架构 董事长同他的总经理说他要把今年的销售额翻30倍吧。总经理听了脸都青了,但没办法,还是得干活,说行,然后就把指标发下去了,让下面的干活去。即把实际做的事情分割给不同部门,然后自己又在办公室继续玩电脑了。这样对于发号施令的董事长,不需要知道具体的细节,只需原创 2015-12-31 16:04:41 · 578 阅读 · 0 评论 -
设计模式系列3---搞转换的适配器模型
用过苹果手机的人对这两样东西应该很熟悉 我们常常需要买多左边那个适配器来用,要不然以苹果这插头,没几个排插能插上的。 但有了这转换器的话,只要满足两端标准,就可以循环利用,很”环保”.例如这样: — 或者这个: 想当年的巴别塔,如果有这样的做语言转换的翻译人,估计也建好了把。起航说这个转换器和排插,是因为今天要讲的适配器模型就和这个类似的道理 。 就让我们来举个例子看下怎么写适配器原创 2015-12-30 21:26:30 · 610 阅读 · 0 评论 -
设计模式系列7---金点子多多的策略模式
编这个策略模式的故事真的不好想,他和前面的桥接模式很类似,虽然桥接是结构模式,而策略是行为模式。这次的故事真的不容易编啊,我们来看下一个我们变成遇到的情况吧。 public class SortHelper{ public static final int SORT_HEAP=0; public static final int SORT_BIN=1; public stati原创 2016-01-02 00:51:28 · 614 阅读 · 0 评论 -
设计模式系列8---发号施令的命令模式
好了,我们还是开一个故事吧。 我们看到过这样的一个表情,我们的程序员接收到来自四面八方的需求,要和不同的人打交道,应对各种所谓需求背后还加多句:“领导提出来的,恨重要“之类的结束语,最终过载,导致崩溃跳楼的情况。哈哈 最重要的是,我们的美工同学也有这样的经历吧! 这种混乱的需求来源,导致了下面这种情况。所以,与其让整体暴漏在问题前,不如推我们的PM出去面对所有 正所谓集体阵亡,不如一个好。就原创 2016-01-02 12:08:34 · 831 阅读 · 0 评论 -
设计模式系列5---多变灵活的桥接
title: 设计模式系列5—多变灵活的桥接 date: 2015-12-31 23:26 tags: [android,设计模式,pattern,桥接] categories: android 《桥接》 — SanjayF 小时候,梦想是当一名宇航员,驾驭飞船,太空探索。 长大后,梦想是当一名渔船夫,划着扁舟,荡漾湖面。 后来啊,梦想是当一原创 2015-12-31 20:44:19 · 631 阅读 · 0 评论 -
设计模式系列20---聊聊IoC与中介者
有一个叫控制反转(Inversion of Control,缩写IoC ) 的东西 ,这个对于计算机的人应该是不陌生的概念,就算你不知道那个Bob大叔。这个概念简单说的是下面这样的事情原本各个类之间的关系乱七八糟的,看起来头都晕了。 他们就像齿轮一样,相互咬合依赖。 如果有一个出问题,那可能整个就崩溃了。但是,如果有一个人出来承担大事,负责协调各个类的话! 那么,他们的关系就可以是像下面图片这原创 2016-01-06 15:05:44 · 1696 阅读 · 0 评论