
设计模式
匍匐-菜鸟
好好做一件事,好好做下去
展开
-
设计模式之工厂模式(一)
对于对象的创建,当然我们可以直接使用new关键字创造一个新的实例化对象,然而我们也知道,当我们实例化的时候创建活动,不应该总是公开的进行,好比如,我们不能在客户端看到其它的实例化对象,再者,这样的代码会经常性的耦合,代码绑着具体的类会导致代码更加的脆弱,缺乏弹性。在初始化的时候,这样的耦合也不是我们想看到的,是吧,所以我们可以通过工厂模式,实弦由工厂类来集中的管理实例化的对象,这样就可以减少实例化原创 2017-08-16 20:18:22 · 213 阅读 · 0 评论 -
模板方法模式
具体的定义: 模板方法模式在一个方法中定义了一个算法的骨架,而将一些步骤延迟到子类之中,模板方法使得子类可以不再改变算法的情况下,重新定义算法中的某些步骤。这个模式是用来创建一个算法的模板,模板具体说来可以看作是一种方法,更具体的说是我们定义了一组步骤,其中人和步骤都可以是抽象的,由子类负责实现。这个可以确保算法的结构保持不变,同时由子类提供部分实现。 有些人喜欢喝咖啡原创 2018-03-30 15:45:42 · 747 阅读 · 0 评论 -
设计模式之装饰者模式
在说装饰者模式之前我们需要先了解一个重要的原则,那就是开放--关闭原则,可以这么理解为,开放是在原有的代码上能够拥有很好的扩展性,封闭则原有的代码可以选择不去改变,其实一个目标就是在不修改现有代码的情况下,允许类容易被扩展,搭配新的行为,使得设计的代码更具有弹性,接受更多的多样化的需求。 通常我们会在设计中最有可能改变的地方使用这个原则,不必要每个地方都要按照这个原则去设计,即便是设计出原创 2017-11-26 16:27:09 · 193 阅读 · 0 评论 -
设计模式之观察者模式
观察者模式其定义了对象之间的一对多的依赖关系,这样一来,当一个对象改变时他所有的依赖者都会收到通知,并得知后自动更新,好比猎头与求职者的关系,猎头会把求职这的信息添加到自己的人员名单中,当有招聘信息时就会通知名单中所有的人,每个人类似于一个对象,当猎头对象改变时,名单中的每个人都会改变状态。这种观察者模式实线的方式不只有一种,但是包括Subject和Observer接口的类的设计的做法是最常见的。原创 2017-11-25 00:07:03 · 235 阅读 · 0 评论 -
设计模式之命令模式
命令模式,从字面义来看就好像是上级对下级下达命令,上级只管通知下级,但是不会知道下级是如何完成的。假设一个场景:某个公司,想知道实现全自动家庭,其有很多合作商,好比电视机厂商,油烟机厂商等,他们的产品的代码的接口都是不同的,然而你作为一个CTO,你的CEO期望你能够将这些东西完整的组织起来,真正的完成这项工作,开拓出新的市场。 在这里正好有一种模式可以提供一种新的思路或者是方法---原创 2017-12-01 15:46:55 · 223 阅读 · 0 评论 -
设计模式之适配器模式与外观模式
适配器模式从字面意思来看,有适配器的意思,这么说吧,最通常的体现是我们的插座,有两孔的,有三孔的,当我们只有两空的插座时,而又想使用一个三孔的插头,这时候怎么办,我们可以通过寻找一个适配器,其实就是一个能够连接两孔和三孔的插头。同样的我们运用到软件设计上来说有些时候我们同样的也需要有这样的适配器,比如有个系统暴露了很多接口,另一个数据部分也暴露的很多接口,但是这些接口不能够直接的联系在一起使用,这原创 2017-11-29 16:15:44 · 325 阅读 · 0 评论 -
责任链模式
当我们想要让一个以上的对象有机会能够处理某个请求时,就是用责任链模式,每个对象依据程序检查请求并对其进行处理,或者将这个传递给下一个对象,链中的每个对象都扮演着处理器的角色,并且都有一个后继对象,如果它可以处理请求,那就处理这个请求,否则直接转移给后继类进行处理。主要用于在窗口系统中,处理类似于鼠标,键盘等的事件类型,优势在于:1.将请求的发送者和接收者进行解耦;2科技简化对象,因为不需要原创 2017-09-13 16:19:36 · 216 阅读 · 0 评论 -
设计模式之单例模式
单例模式可以说是设计模式中最简单的模式,但是呢用处以及掌握起来还是需要一定的时间和精力的,下面介绍单利模式; 有一些对象我们只需要有一个就够了,比方说:线程池,缓存,对话框,处理偏好设置和注册表等的对象,日志对象,打印机,显卡设备的驱动,事实上,这些都只能有一个实例对象,如果有多个会产生很多问题。原创 2017-08-19 19:42:46 · 236 阅读 · 0 评论 -
设计模式之工厂设计模式(二)
接到上篇文章中的工厂设计模式思想,我们的Cookies店这时又有了新的调整:有些加盟店使用了低价的原料,所以呢总店做出了决定,决定采取一些手段,避免这样下去毁了自己的招牌,为了确保原料一致,总店决定建造一家原料工厂,为各个加盟店提供原料:所以,为了能够给各个加盟店送出合适的原料需要了解一下,各种Cookies的加工所使用的原料,所以呢,我们需要建立一个工厂,负责创建原料中的每一种原料,工厂需要原创 2017-08-19 18:56:11 · 225 阅读 · 0 评论 -
设计模式之状态模式
状态模式,我们给他一个通俗的定义:在我们改变某一个对象的内部状态的时候,我们也要同时改变它的行为,表面上是改变了动作和行为,实际上则是改变了类的内部的状态。通过这个定义我们可以隐约的猜想到,我们在改变的状态的时候,其实是改变的一个类,也就是说一个类封装了一个状态,这个思想和策略模式比较像,将变化的封装起来,在策略模式中封装的是一个算法,以及算法的流程,其算法的大致过程一致,只是具体到某一个算法时会...原创 2018-09-03 16:25:19 · 333 阅读 · 0 评论