
设计模式
calfman
这个作者很懒,什么都没留下…
展开
-
设计模式笔记一
第一次接触设计模式,想把看到的一点一点的记录下来。1.设计原则一:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。另一种思考方式:把会变化的部分取出并封装起来,以便以后可以轻松地改动或扩充此部分,而不影响不需要变化的其他部分。2.设计原则二:针对接口编程,而不是针对实现编程。3.设计原则三:多用组合,少用继承。 模式分类:1.创建型模式(Creation...2008-08-07 17:32:48 · 84 阅读 · 0 评论 -
一:strategy模式(策略模式)
策略模式:策略模式的用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。使用策略模式可以把行为和环境分割开来。环境类负责维持和查询行为类,各种算法则在具体策略中提供。由于算法和环境独立开来,算法的修改都不会影响环境和客户端 策略模式由三部分组成:a: 抽象策略角色:策略类,通常由一个接口或者抽象类...2008-08-07 22:57:00 · 105 阅读 · 0 评论 -
二:访问者模式学习笔记
访问者模式,顾名思义使用了这个模式后就可以在不修改已有程序结构的前提下,通过添加额外的“访问者”来完成对已有代码功能的提升。 《设计模式》一书对于访问者模式给出的定义为:表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。从定义可以看出结构对象是使用访问者模式必须条件,而且这个结构对象必须存在遍历自身各个对象的方法。这便类似于java中的c...2008-08-08 11:42:19 · 99 阅读 · 0 评论 -
GoF:Singleton单例模式
动机:在软件系统中,经常需要一些这样特殊的类,必须保证它在系统中只有一个实例。才能保证它的逻辑正确性、及良好的效率。 方案一:public class Singleton1 { private Singleton1(){ } private static Singleton1 singleton; public static Singleton1 getInstance(){ ...2008-08-09 17:01:08 · 106 阅读 · 0 评论 -
GoF:Abstract Factory(抽象工厂模式)
在软件系统中,经常面临着“一系列相互依赖的对象”的创建工作;同时,由于需求的变化,往往存在更多系列对象的创建工作。这时可以考虑Abstract Factory。Abstract Factory的几个要点:(1)如果没有应对“多系列对象构建”的需求变化,则没有必要使用Abstract Factory模式,这时候使用简单的静态工厂完全可以。(2)“系列对象”指的是这些对象之间有相互依赖、或作用的...2008-08-11 12:34:17 · 146 阅读 · 0 评论 -
GoF:Builder模式
Builder模式定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。1.首先假设一个复杂对象是由多个部件组成的,Builder模式是把复杂对象的创建和部件的创建分别开来,分别用Builder类和Director类来表示。 A.Builder接口,它定义如何创建复杂对象的各个部件。public interface Builder { // 创建部件A 比如创建...2008-08-12 20:25:44 · 169 阅读 · 0 评论 -
GoF:Factory Method
1.Factory Method模式主要用于隔离类对象的使用者和具体类型之间的耦合关系。面对一个经常变化的具体类型,紧耦合关系会导致软件的脆弱。2.Factory Method模式通过面向对象的手法,将所要创建的具体对象工作延迟到子类,从而实现一种扩展(而非更改)的策略。较好地解决了这种紧耦合关系。3.Factory Method模式解决“单个对象”的需求变化,Abstract Factory...原创 2008-08-13 21:02:07 · 119 阅读 · 0 评论 -
GoF:Prototype模式
1.意图: 用原型实例制定创建对象的种类,并且通过拷贝这些原型创建新的对象。(G4)例子:public abstract class AbstractPrototype implements Cloneable{ @Override protected Object clone(){ Object o=null; try { o=super.clone(); } cat...原创 2008-08-14 20:31:48 · 141 阅读 · 0 评论 -
GoF:Adapter模式
adapter模式,下面以2、3口电源接口为例。电脑的电源线是3口的,插座是2口的,所以需要一个适配器,使他们能够工作。eg: A.接口口子类型//2脚插座口 凹的那种public interface Socket2A { public void access(Socket2B sb);}//2脚插座 凸的那种public interface Socket2B { pu...原创 2008-08-17 15:39:56 · 150 阅读 · 0 评论