
设计模式
wlh269
这个作者很懒,什么都没留下…
展开
-
抽象工厂模式AbstractFactory
什么情况下使用抽象工厂模式? a).一个系统不应该依赖于产品类的实例如何被创建、组合和表达的细节,这对于所有形态的工厂模式都是重要的; b).这个系统的产品有多于一个产品族,而系统只消费其中某一族的产品;(这是抽象工厂模式的原始用意,某一族的产品就类似于下面例子中,[size=medium][color=red]北方的产品属于一个产品族,热带的产品属于一个产品族[/color][/s...2009-04-02 12:16:13 · 95 阅读 · 0 评论 -
门面模式
为什么要使用门面模式: 一般而言子系统和其他子系统之间,客户端和实现层之间存在这很大的依赖性,引入Facade模式将一个子系统与它的客户端以及其他的子系统分离,[size=medium][color=red]可以提高子系统的独立性和可移植行.[/color][/size] 在构建一个层次化的系统的时候,可以使用Facade模式定义系统的每一层的入口,如果层与层之间是相互依赖的...原创 2009-04-02 19:44:27 · 65 阅读 · 0 评论 -
Strategy策略模式
设计模式解读之一: 策略模式 1. 模式定义 把会变化的内容取出并封装起来,以便以后可以轻易地改动或扩充部分,而不影响不需要变化的其他部分; 2. 问题缘起 当涉及至代码维护时,为了复用目的而使用继承,结局并不完美。对父类的修改,会影响到子类型。在超类 中增加的方法,会导致子类型有该方法,甚至连那些不该具备该方法的子类型也无法免除。 (可重用但不灵活): 我们...2009-04-02 20:07:32 · 100 阅读 · 0 评论 -
对比3种单例模式
[color=red]单例模式的优点[/color] 1,实例控制:单例模式防止其它对象对自己的实例化,确保所有的对象都访问一个实例。 2,伸缩性:因为由类自己来控制实例化进程,类就在改变实例化进程上有相应的伸缩性。 [color=red]单例模式的缺点[/color] 1,系统开销。虽然这个系统开销看起来很小,但是每次引用这个类实例的时候都要进行实例是否存在的检查。...2009-02-03 10:36:48 · 73 阅读 · 0 评论 -
静态代理
[size=large][color=darkred]代理类将扩展的功能在代理类中来实现,不破坏实现类的封装行[/color][/size] 已知接口UserManager.java含有四个方法: [code="java"] package com.wlh; public interface UserManager { public void addUser(String us...2009-02-04 13:28:01 · 80 阅读 · 0 评论