摘要: 建造者模式又被称为生成器模式,感觉跟模板方法模式有点像,又和抽象工厂模式有点像,对于模板方法而言,它制造出来的子类大多数是一致的,而对于子类需求变化很大的部分,虽然模板方法通过钩子函数能解决,但是如果每个变化都调用一次钩子函数,那也不是个事儿。对于抽象工厂而言,建造者模式返回一个完整的复杂产品,而抽 阅读全文
posted @ 2017-12-22 10:59 fengshenjingjun 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 对于模板方法模式,我想说的是,每个写过代码的人都应该或多或少的用过,它的定义为:定义一个操作中的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。说的通俗一点,就是为子类设计一个模板以便于子类复用里面的方法。为了避免子类恶意修改方法的实现细节,一 阅读全文
posted @ 2017-12-19 21:36 fengshenjingjun 阅读(7335) 评论(0) 推荐(2) 编辑
摘要: 工厂是一个生产产品的地方,它本身不会平白无故地就开始生产一些产品,而是当有需求的时候,才生产出被需要的产品,工厂本身与需要产品这件事本身没有太多关联。工厂方法模式也正是如此。 工厂方法模式一般由如下四个部分组成: 1、抽象工厂角色:这是工厂方法模式的核心,它与应用程序无关。是具体工厂角色必须实现的接 阅读全文
posted @ 2017-12-15 15:30 fengshenjingjun 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 单例模式是一个很简单的模式,应用场景不是很多,一般在帮助类需要构建单个实例,连接数据库或者打开一些IO通道等的情况会用到,但是写这个单例模式却可以考察很多同学对于代码的理解,因此面试的时候面试官很喜欢问几个单例的问题。这篇文章写了一些我对于单例的理解和看法。 在看到单例模式几个字的时候,脑子里直接就 阅读全文
posted @ 2017-12-13 17:44 fengshenjingjun 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 软件工程师都会学习设计模式,设计模式可以说是前人智慧与经验的结晶,虽然不是哪里都用得到,但是在合适的地方使用合适的设计模式,能够带来巨大的收益。我通过学习《head first 设计模式》,逐渐掌握这些设计方法,本篇是对于策略模式的一点心得。 策略模式是对算法的包装,是把使用算法的类和算法本身分割开 阅读全文
posted @ 2017-11-25 14:18 fengshenjingjun 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 在目前这家公司,刚进公司的时候接手了一个服务,算是个比较完备的服务,其中几台电脑之间通信用到了rabbitmq,一开始没出什么问题,然后后来勒索病毒wanner cry来的时候,系服把所有服务器装了一个什么杀毒软件,重启之后rabibtmq集群就出现了一些问题,经过一番学习,把这些问题都搞定了,现在 阅读全文
posted @ 2017-09-17 11:43 fengshenjingjun 阅读(6922) 评论(0) 推荐(0) 编辑