设计模式
JordanInShenzhen
这个作者很懒,什么都没留下…
展开
-
java设计模式(六)--适配器模式
适配器模式是一种结构型模式,在阎宏博士的《JAVA与模式》一书中开头是这样描述适配器(Adapter)模式的: 适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。适配器模式的用途从最贴近我们的日常生活切入吧,用手机充电线做例子,现在市场上用的手机最多的是安卓手机,其次是苹果手机,一般情况下我们安卓手机原创 2015-12-13 22:10:02 · 652 阅读 · 0 评论 -
java设计模式(十)--facade模式
Facade(外观)设计模式为子系统中的各类(或结构与方法)提供一个简明一致的界面,隐藏子系统的复杂性,使子系统更加容易使用。Facade设计模式概述: 实际应用中,我们在对付一些老旧的code,或者即使不是老旧的code,但涉及多个子系统时,除了重写全部代码,我们还可以采用这样一种策略:重新进行类的设计,将原来分散的代码的类、结构以及方法重新组合,形成新的,统一的接口供上层应原创 2016-05-06 00:58:16 · 633 阅读 · 0 评论 -
java设计模式(四)--代理模式
代理模式定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式的应用:一般在如下四种场合会用到代理模式,一:远程代理,也就是为一个对象在不同的地址空间提供局部代表。这样可以隐藏一个对象存在于不同地址空间的事实。这个场合有个常用的例子,如应用程序在项目中加入一个WebServi原创 2015-12-24 20:56:43 · 541 阅读 · 0 评论 -
java设计模式--总体概要
前段时间由于工作上的调动,不再带团队负责定制局点的开发工作,转到部门的Core模块开发项目组,负责部门核心代码的开发。由于之前负责的是定制局点,直接面向客户的特殊需求,同时需求也来的比较紧急,所以都没有过多考虑代码设计上的东西。接手现在的工作后,发现部门首席架构师写的代码真的非常精妙,对各种设计模式的使用也是用的恰到好处,整个框架的扩展性非常的强,让我意识到深入学习设计模式的重要性,所以仅以此篇博原创 2015-11-23 20:19:07 · 716 阅读 · 0 评论 -
java设计模式(一)--工厂模式(Factory Method)
Why Factory Method?在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的。但是在一些情况下, new操作符直接生成对象会带来一些问题。举例来说, 许多类型对象的创造需要一系列的步骤: 你可能需要计算或取得对象的初始设置; 选择生成哪个子对象实例; 或在生成你需要的对象之前必须先生成一些辅助功能的对象。 在这些情况,新对象的转载 2015-11-23 22:49:34 · 455 阅读 · 0 评论 -
java设计模式(七)--迭代器模式
迭代器模式(Iterator):提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示当我们需要访问一个聚集对象,而且不管这些对象是什么都需要遍历的时候,你就应该考虑用迭代器模式。或者说,当你需要对聚集有多种方式遍历时,就可以考虑用迭代器模式。迭代器模式(Iterator)是行为型模式,相比起java中的其他模式,使用的最多的不是单例模式,也不是工厂模式,更不是策略模式,而原创 2015-12-16 22:26:58 · 536 阅读 · 0 评论 -
java设计模式--六大设计原则
在武林之中,江湖之上,有一种说法,说是武学的最高境界,是无招胜有招。各门各派练一门功夫分为内功和外功。外功好比招式,就是所谓的23种设计模式。而内功呢,就是心法和内力,那就是这6种法则。光会外功那是花拳绣腿,内功修为才是境界。如此众多的设计模式,学完2遍,3遍可能也会忘的只记得单例和工厂模式。但是只要原则记住,在以后的设计中,有意无意就会用的设计模式的精髓。六种设计原则单一职责原则:原创 2015-12-21 19:02:44 · 600 阅读 · 0 评论 -
java设计模式(二)--抽象工厂模式
例子背景:随着客户的要求越来越高,宝马车需要不同配置的空调和发动机等配件。于是这个工厂开始生产空调和发动机,用来组装汽车。这时候工厂有两个系列的产品:空调和发动机。宝马320系列配置A型号空调和A型号发动机,宝马230系列配置B型号空调和B型号发动机。概念: 抽象工厂模式是工厂方法模式的升级版本,他用来创建一组相关或者相互依赖的对象。比如宝马320系列使用空调型号A转载 2015-11-24 23:29:20 · 495 阅读 · 0 评论 -
java设计模式(五)--策略模式
1,什么是策略模式?创建一个能够根据所传递的参数对象的不同而具有不同行为的方法,被称为策略设计模式。2,策略模式主要用途是什么?能够动态改变对象的行为,根据所传参数不同,有不同的行为表现3,设计原理将变化部分设计成一个对象里面的方法,在继承的子类中覆盖该方法,利用java的多态性,指向不同子类对象的父类引用作为参数传递进去的时候(这就是策略),就会调用到不同的子类中重写原创 2015-12-03 21:19:27 · 691 阅读 · 0 评论 -
java设计模式(三)--单例模式
什么是单例模式?单例模式是设计模式中最简单的形式之一。这一模式的目的是使得类的一个对象成为系统中的唯一实例。要实现这一点,可以从客户端对其进行实例化开始。因此需要用一种只允许生成对象类的唯一实例的机制,“阻止”所有想要生成对象的访问。单例模式最初的定义出现于《设计模式》(艾迪生维斯理, 1994):“保证一个类仅有一个实例,并提供一个访问它的全局访问点。”Java中单例原创 2015-11-26 12:47:42 · 578 阅读 · 2 评论 -
java设计模式(九)--建造者模式
1.概念 将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。 [构建与表示分离,同构建不同表示] 与抽象工厂的区别:在建造者模式里,有个指导者,由指导者来管理建造者,用户是与指导者联系的,指导者联系建造者最后得到产品。即建造模式可以强制实行一种分步骤进行的建造过程。 建造模式是将复杂的内部创建封装在内部,对于外部调用的人来说,只需要传入建造原创 2015-12-18 11:08:19 · 486 阅读 · 0 评论 -
java设计模式(八)--模板方法模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述模板方法(Template Method)模式的: 模板方法模式是类的行为模式。准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。这就是模板方法模式的用意。模板方法模式的结构原创 2015-12-17 21:53:21 · 436 阅读 · 0 评论 -
java设计模式(十一)--状态模式
早之前就研究过老大开发的订单框架,一直想把它的最核心部分用到的设计模式放到最后面来写,作为本系列博客的收官之作。这段时间决定把部门框架的演进之路作为一个系列的博客写出来,而新框架最核心的部分就是订单,在我们的金融系统里面,所有的业务请求,都被视为一笔订单。而订单的核心代码,其实就是一个状态机的实现,下面就让我以我们部门的订单状态机为例子,阐述下我对设计模式中状态模式的理解,仅供大家交流学习。什原创 2016-06-20 02:03:40 · 736 阅读 · 0 评论