这样算是应用了Facade Pattern吗?

02-09-18 CrazyJavar

class FP

{

public void do1();

public void do2();

public void do3();

}

我把它改为

class FP

{

private void do1();

private void do2();

private void do3();

public void work()

{

do1();

do2();

do3();

}

}

请问这样算是Facade Pattern吗?

banq
2002-09-18 08:15

单一个类是没有说明模式可言的

主要看这个类是不是代表很多类与外界打交道。

cc
2002-09-24 08:53

我怎么感觉在你的设计模式facade的例子中,很像范型啊。

曙光
2002-10-14 11:03

这个是不是Facade模式?请大家指正

public interface MyInterface {
   public abstract void doIt();
}

//implement interface MyInterface
public class InterfaceImpl implements MyInterface {
   public void doIt() {
      //code here
   }
}

//facade class
public class MyFacade {
   private static MyInterface getInstance() {
        return new InterfaceImpl();
   }
   public static void doIt() {
        getIntace().doIt();      
   }
}

//client class
public class Client {
   public static void main(String[] args) {
      //客户端程序只与MyFacade打交道,而不管Interface具体实现细节
      MyFacade.doIt();
  }
}
<p>

banq
2002-10-14 13:21

这样可以算是facade模式,但是这是最退化的facade模式,

因为只有一个doIt()方法,如果你还有doOther等其他方法也通过MyFacade 实现,就能充分说明了。