设计模式
Jmark_GC
乐观开朗,学习能力强,热衷于web开发技术
展开
-
《JAVA与模式》之桥梁模式
桥梁模式是对象的结构模式。又称为柄体(Handle and Body)模式或接口(Interface)模式。桥梁模式的用意是“将抽象化(Abstraction)与实现化(Implementation)脱耦,使得二者可以独立地变化”。桥梁模式的用意 桥梁模式虽然不是一个使用频率很高的模式,但是熟悉这个模式对于理解面向对象的设计原则,包括“开-闭”原则以及组合/聚合复用原则都转载 2013-03-21 15:06:31 · 744 阅读 · 0 评论 -
深入理解动态代理(二)(网上总结的要点)
相关的类和接口要了解 Java 动态代理的机制,首先需要了解以下相关的类或接口:java.lang.reflect.Proxy:这是 Java 动态代理机制的主类,它提供了一组静态方法来为一组接口动态地生成代理类及其对象。 清单 1. Proxy 的静态方法 // 方法 1: 该方法用于获取指定代理对象所关联的调用处理器static转载 2012-08-31 22:50:58 · 822 阅读 · 0 评论 -
深入理解动态代理(一)(网上总结的要点)
1.代理模式的概念 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。 按照代理的创建时期,代理类可以分为两种。 静转载 2012-08-31 22:40:46 · 756 阅读 · 0 评论 -
你还在用if else吗?
面向过程设计和面向对象设计的主要区别是:是否在业务逻辑层使用冗长的if else判断。如果你还在大量使用if else,当然,界面表现层除外,即使你使用Java/C#这样完全面向对象的语言,也只能说明你的思维停留在传统的面向过程语言上。传统思维习惯分析 为什么会业务逻辑层使用if else,其实使用者的目的也是为了重用,但是这是面向过程编程的重用,程序员只看到代码重用,因为他看到转载 2013-01-05 02:21:33 · 610 阅读 · 2 评论 -
策略模式(Strategy) 2
2 解决方案2.1 策略模式来解决 用来解决上述问题的一个合理的解决方案就是策略模式。那么什么是策略模式呢?(1)策略模式定义 定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独 立于使用它的客户而变化。(2)应用策略模式来解决的思路 仔细分析上面的问题,先来把它抽象一下,各种计算转载 2012-11-26 01:07:59 · 572 阅读 · 0 评论 -
策略模式(Strategy) 1
1 场景问题1.1 报价管理 向客户报价,对于销售部门的人来讲,这是一个非常重大、非常复杂的问题,对不同的客户要报不同的价格,比如:对普通客户或者是新客户报的是全价对老客户报的价格,根据客户年限,给予一定的折扣对大客户报的价格,根据大客户的累计消费金额,给予一定的折扣还要考虑客户购买的数量和金额,比如:虽然是新用户,但是一次购买的数量非常大,或者是总金额非转载 2012-11-26 00:58:29 · 554 阅读 · 0 评论 -
策略模式(Strategy) 6
3.4 策略模式结合模板方法模式 在实际应用策略模式的过程中,经常会出现这样一种情况,就是发现这一系列算法的实现上存在公共功能,甚至这一系列算法的实现步骤都是一样的,只是在某些局部步骤上有所不同,这个时候,就需要对策略模式进行些许的变化使用了。 对于一系列算法的实现上存在公共功能的情况,策略模式可以有如下三种实现方式:一个是在上下文当中实现公共功能转载 2012-11-26 18:46:12 · 491 阅读 · 0 评论 -
策略模式(Strategy) 5
接策略模式-4,其实是讲的一个主题,写在一个里面超长了,只好分成了两个,请见谅! 3:扩展示例,实现方式一 经过上面的测试可以看出,通过使用策略模式,已经实现好了两种支付方式了。如果现在要增加一种支付方式,要求能支付到银行卡,该怎么扩展最简单呢? 应该新增加一种支付到银行卡的策略实现,然后通过继承来扩展支付上下文,在里面添加新的支付方式需要的新的数据转载 2012-11-26 18:27:52 · 507 阅读 · 0 评论 -
策略模式(Strategy) 4
3.3 Context和Strategy的关系 在策略模式中,通常是上下文使用具体的策略实现对象,反过来,策略实现对象也可以从上下文获取所需要的数据,因此可以将上下文当参数传递给策略实现对象,这种情况下上下文和策略实现对象是紧密耦合的。 在这种情况下,上下文封装着具体策略对象进行算法运算所需要的数据,具体策略对象通过回调上下文的方法来获取这些数据转载 2012-11-26 18:06:47 · 572 阅读 · 0 评论 -
策略模式(Strategy) 3
3 模式讲解3.1 认识策略模式(1)策略模式的功能 策略模式的功能是把具体的算法实现,从具体的业务处理里面独立出来,把它们实现成为单独的算法类,从而形成一系列的算法,并让这些算法可以相互替换。 策略模式的重心不是如何来实现算法,而是如何组织、调用这些算法,从而让程序结构更灵活、具有更好的维护性和扩展性。(2)策略模式和if-else转载 2012-11-26 15:50:07 · 546 阅读 · 0 评论