2010年12月24日
摘要: 2 解决方案1 简单工厂来解决 用来解决上述问题的一个合理的解决方案就是简单工厂,那么什么是简单工厂呢?1:简单工厂定义2:应用简单工厂来解决的思路 分析上面的问题,虽然不能让模块外部知道模块内的具体实现,但是模块内部是可以知道实现类的,而且创建接口是需要具体实现类的。 那么干脆在模块内部新建一个类,在这个类里面来创建接口,然后把创建好的接口返回给客户端,这样外部应用就只需要根据这个类来获取相应的接口对象,然后就可以操作接口定义的方法了。把这样的对象称为简单工厂,就叫Factory吧。 这样一来,客户端就可以通过这个Factory来获取需要的接口对象,然后调用接口的方法来实现需要的功能,而且客 阅读全文
posted @ 2010-12-24 10:31 云飞龙行 阅读(2267) 评论(0) 推荐(3) 编辑
摘要: 首先感谢大家长久以来的支持和鼓励,没有你们的大力帮助,是很难坚持走到今天的,因此,向你们致以诚挚的感谢! 另外有很多朋友在博客里面、QQ里面询问,到底什么时候能够看到书,这里集中公告一下: 目前书已经上市,网店和书店应该都有了,当然,远一点的地方,可能书店要上得慢一点,过几天应该就会有的。这里推荐大家去当当网购买,因为:1:当当网 是 75折,与其他家网店同价,都是最低的2:当当网现在在搞活动,全场满119 返 30,这是很合适的当当网的销售链接:http://product.dangdang.com/product.aspx?product_id=20994349&ref=search-0- 阅读全文
posted @ 2010-12-24 09:44 云飞龙行 阅读(825) 评论(1) 推荐(3) 编辑
  2010年12月6日
摘要: 继续研磨设计模式,来个简单的简单工厂 简单工厂不是一个标准的设计模式,但是它实在是太常用了,简单而又神奇,所以还是需要好好掌握的,就当是对学习设计模式的热身运动吧。 为了保持一致性,我们尽量按照学习其它模式的步骤来进行学习。1 场景问题 大家都知道,在Java应用开发中,要“面向接口编程”。 那么什么是接口?接口有什么作用?接口如何使用?一起来回顾一下:1.1 接口回顾(1)Java中接口的概念 ... 阅读全文
posted @ 2010-12-06 17:02 云飞龙行 阅读(2465) 评论(2) 推荐(6) 编辑
  2010年11月1日
摘要: 3.3 装饰模式和AOP 装饰模式和AOP在思想上有共同之处。可能有些朋友还不太了解AOP,下面先简单介绍一下AOP的基础知识。1:什么是AOP——面向方面编程 AOP是一种编程范式,提供从另一个角度来考虑程序结构以完善面向对象编程(OOP)。 在面向对象开发中,考虑系统的角度通常是纵向的,比如我们经常画出的如下的系统架构图,默认都是从上到下,上层依赖于下层,如图5所示: ... 阅读全文
posted @ 2010-11-01 12:57 云飞龙行 阅读(3053) 评论(5) 推荐(7) 编辑
  2010年10月31日
摘要: 3 模式讲解3.1 认识装饰模式(1)模式功能 装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象增加功能,相当于是改变了对象的外观。当装饰过后,从外部使用系统的角度看,就不再是使用原始的那个对象了,而是使用被一系列的装饰器装饰过后的对象。 这样就能够灵活的改变一个对象的功能,只要动态组合的装饰器发生了改变,那么最终所得到的对象的功能也就发生了改变。 变相的还得到了另外一个好处,那就是... 阅读全文
posted @ 2010-10-31 10:21 云飞龙行 阅读(2377) 评论(2) 推荐(6) 编辑
  2010年10月26日
摘要: 2 解决方案2.1 装饰模式来解决 用来解决上述问题的一个合理的解决方案,就是使用装饰模式。那么什么是装饰模式呢?(1)装饰模式定义(2)应用装饰模式来解决的思路 虽然经过简化,业务简单了很多,但是需要解决的问题不会少,还是要解决:要透明的给一个对象增加功能,并实现功能的动态组合。 所谓透明的给一个对象增加功能,换句话说就是要给一个对象增加功能,但是不能让这个对象知道,也就是不能去改动这个对象。而... 阅读全文
posted @ 2010-10-26 08:57 云飞龙行 阅读(2565) 评论(3) 推荐(6) 编辑
  2010年10月18日
摘要: 装饰模式(Decorator)1 场景问题1.1 复杂的奖金计算 考虑这样一个实际应用:就是如何实现灵活的奖金计算。 奖金计算是相对复杂的功能,尤其是对于业务部门的奖金计算方式,是非常复杂的,除了业务功能复杂外,另外一个麻烦之处是计算方式还经常需要变动,因为业务部门经常通过调整奖金的计算方式来激励士气。 先从业务上看看现有的奖金计算方式的复杂性: 首先是奖金分类:对于个人,大致有个人当月业务奖金、... 阅读全文
posted @ 2010-10-18 09:14 云飞龙行 阅读(2923) 评论(4) 推荐(11) 编辑
  2010年9月16日
摘要: 3.4 广义桥接-Java中无处不桥接 使用Java编写程序,一个很重要的原则就是“面向接口编程”,说得准确点应该是“面向抽象编程”,由于在Java开发中,更多的使用接口而非抽象类,因此通常就说成“面向接口编程”了。 接口把具体的实现和使用接口的客户程序分离开来,从而使得具体的实现和使用接口的客户程序可以分别扩展,而不会相互影响。使用接口的程序结构如图12所示:图12 使用接口的程序结构示意图 可... 阅读全文
posted @ 2010-09-16 14:23 云飞龙行 阅读(2758) 评论(8) 推荐(18) 编辑
  2010年9月13日
摘要: 3 模式讲解3.1 认识桥接模式(1)什么是桥接 在桥接模式里面,不太好理解的就是桥接的概念,什么是桥接?为何需要桥接?如何桥接?把这些问题搞清楚了,也就基本明白桥接的含义了。 一个一个来,先看什么是桥接?所谓桥接,通俗点说就是在不同的东西之间搭一个桥,让他们能够连接起来,可以相互通讯和使用。那么在桥接模式中到底是给什么东西来搭桥呢?就是为被分离了的抽象部分和实现部分来搭桥,比如前面示例中抽象的消... 阅读全文
posted @ 2010-09-13 18:10 云飞龙行 阅读(3231) 评论(6) 推荐(18) 编辑
  2010年9月6日
摘要: 2 解决方案2.1 桥接模式来解决 用来解决上述问题的一个合理的解决方案,就是使用桥接模式。那么什么是桥接模式呢?(1)桥接模式定义 将抽象部分与它的实现部分分离,使它们都可以独立地变化。(2)应用桥接模式来解决的思路 仔细分析上面的示例,根据示例的功能要求,示例的变化具有两个纬度,一个纬度是抽象的消息这边,包括普通消息、加急消息和特急消息,这几个抽象的消息本身就具有一定的关系,加急消息和特急消息... 阅读全文
posted @ 2010-09-06 09:19 云飞龙行 阅读(3349) 评论(9) 推荐(19) 编辑