JAVA设计模式
文章平均质量分 94
通过对JAVA设计模式的学习,提高在开发过程中代码架构的健壮性和可复用性,使得代码活的更加长久。
皮斯特劳沃
目前在一家大型互联网公司工作,担任JAVA高级开发工程师,主要负责手机APP服务器端相关开发和研发。平时喜欢学习和钻研技术,对算法、代码重构、设计模型有所学习和了解。目前正在学习RPC和WebService等相关分布式技术。
展开
-
设计模式12_责任链模式
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/1044547741、定义 责任链模式是一种对象的行为模式。在责任链模式里,很多对象由每一个对象对其下家的引用而连接起...原创 2020-02-23 11:52:56 · 246 阅读 · 0 评论 -
设计模式11_策略模式
1、定义 策略模式作为一种软件设计模式,指对象有某个行为,但是在不同的场景中,该行为有不同的实现算法。比如每个人都要“交个人所得税”,但是“在美国交个人所得税”和“在中国交个人所得税”就有不同的算税方法。 策略模式: * 定义了一族算法(业务规则); * 封装了每个算法;原创 2016-12-09 15:52:27 · 1055 阅读 · 2 评论 -
Reactor(反应器)模式初探
前言 本文针对Reactor模式从四个方面进行了阐述,首先简单介绍了Reactor模式是什么;其次,阐述了为什么使用Reactor模式;再次,针对实际生活的应用场景,分析了在什么场景下使用Reactor模式;最后,着重分析讲解了如何使用Reactor模式,以及代码示例。1、What:Reactor模式是什么? 反应器设计模式(Reactor原创 2016-11-13 22:04:15 · 26234 阅读 · 1 评论 -
设计模式10_门面模式
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/52050069 1、定义 门面模式是对象的结构模式,它提供一个高层次的接口,使得子系统更易于使用。2、说明 对于web系统或app而言,其中包含各种不同的业务方法,以提供不同的服务,而不同业务之间可能会彼此进行调用。这样,原创 2016-07-27 22:27:25 · 1860 阅读 · 0 评论 -
设计模式09_观察者模式
1、定义 观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。(摘自Head First中文版51页)2、说明 在通常情况下,软件系统会包含各种对象,就像大海孕育着形色各异的动植物一样。在浩瀚的海洋中,各种动植物彼此依赖和约束,形成一个个生物链。某一种生物的行为状态变化可能会造成其它生物作出相应行动。同样,在原创 2016-06-13 22:42:24 · 2833 阅读 · 3 评论 -
设计模式08_适配器模式
1、定义 适配器模式将一个类的接口,转换成客户期望的另一个接口。适配器让原本不兼容的类可以合作无间。(摘自Head First中文版243页)2、说明 通常情况下的适配器模式有两种形式:对象适配器和类适配器。类的适配器模式采用继承实现,而对象适配器采用对象组合方式实现。 类适配器使用继承的方式(静态方式),这样就使得原创 2016-06-02 22:37:08 · 7637 阅读 · 0 评论 -
设计模式07_代理模式
1、定义 代理模式为另一个对象提供替身或占位符以控制对这个对象的访问。使用代理模式创建代表对象,让代表对象控制某对象的访问,被代理的对象可以是远程的对象、创建开销大的对象或需要安全控制的对象。(摘自Head First 中文版第460页)2、说明 代理模式中,代理类(proxy class)对它的客户隐藏了对象的具体信息。因此,在使用代理模式原创 2016-05-31 23:04:49 · 7861 阅读 · 0 评论 -
设计模式06_装饰者模式
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/515315191、定义 动态将职责添加到对象身上。若要扩展功能,装饰者模式提供了比继承更加灵活的替代方案。(摘自Head First 中文版第91页)2、说明 通常情况下,在使用继承设计子类的行为,是在编译时静态决定的,所有的原创 2016-05-29 16:19:19 · 4581 阅读 · 0 评论 -
设计模式05_创建者模式
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/46489147创建者模式:将一个复杂对象的构建和其表示分离开来,使得同样的构建过程可以创建出不同的表示。例如我们需要盖一栋楼房,需要工人来砌墙,需要设计师来设计房子怎么盖,而这里的设计师本身是不干活的,它只是负责下命令让工人原创 2015-06-14 08:32:35 · 2175 阅读 · 1 评论 -
设计模式04_抽象工厂模式
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/46440915抽象工厂模式是对象的创建模式,它是工厂方法模式的进一步推广。抽象工厂模式与工厂方法模式的最大区别就在于工厂方法模式针对的是一个产品等级结构;而抽象工厂模式则需要面对多个产品等级结构。假设一个子系统需要一些产品对象,而这些产品又属于一个以上的产品等级结构。那么为了将消费这些产品对象的责任和创建这些产品对象的责原创 2015-06-10 13:40:01 · 1954 阅读 · 0 评论 -
设计模式03_工厂方法模式
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/46402017工厂方法模式:定义了一个创建对象的接口,但由子类来决定要实例化的的类是哪一个。工厂方法让类把实例化推迟到子类中。减少了应用程序和具体类之间的依赖进行松耦合。OO原则:依赖抽象,不要依赖具体类抽象产品角色:package com.design.factoryMethod;//抽象产品角色public abstract clas原创 2015-06-07 16:54:58 · 1467 阅读 · 0 评论 -
设计模式02_简单工厂模式
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/46400991本文主要介绍简单工厂模式,主要通过代码的形式进行展示,对于程序员来说我想观看代码进行理解比文档来的直接和快些。简单工厂模式(simple factory)是类的创建模式,又叫静态工厂方法(static fac原创 2015-06-07 15:17:14 · 2008 阅读 · 2 评论 -
设计模式01_单例模式
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/41016723 单例模式是设计模式中比较简单的一种模式,也是使用的比较多的一种模式。 特别是在某些对象只需要一个时,比如线程池、缓存、日志对象、注册表对象等。 如果创建了多个,可能会导致很多问题。比如程序行为异常、资源使用过量等。原创 2014-11-11 20:14:26 · 3150 阅读 · 0 评论