浅谈外观模式

Posted jylz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅谈外观模式相关的知识,希望对你有一定的参考价值。

外观模式,我的理解就是模块封装。比如要实现A类,需要B\C\D三个类,客户调用A类成员函数,A类调用B\C\D。对应客户看不到bcd,只能看到A,因此成为外观模式。这里理解为关联关系。

//复杂或多对象
class objectOne
{
  public void operator() 
  {
    cout<<"operator one\n";
  }
}
class objectTwo
{
  public void operator() 
  {
    cout<<"operator two\n";
  }
}
class objectThree
{
  public void operator() 
  {
    cout<<"operator three\n";
  }
}
class objectFour
{
  public void operator() 
  {
    cout<<"operator four\n";
  }
}
//外观实现
class Facade
{
  objectOne one;
  objectTwo two;
  objectThree three;
  objectFour four;

  public Facade() 
  {
    obj1 = new objectOne();
    obj2 = new objectTwo();
    obj3 = new objectThree();
    obj4 = new objectFour();
  }
  public void MethodA() 
  {
    cout<<" Fun A()-----\n");
    obj1.operator();
    obj2.operator();
    obj3.operator();
    obj4.operator();
  }
  public void MethodB() 
  {
    cout<<" Fun B()-----\n");
    obj4.operator();
    obj3.operator();
    obj2.operator();
    obj1.operator();
  }
}
//调用
void main() 
{
  Facade facade = new Facade();
  facade.MethodA();
  facade.MethodB();
}

以上是关于浅谈外观模式的主要内容,如果未能解决你的问题,请参考以下文章

浅谈.NET,C#三层架构(自己总结)

在 xamarin.android 中管理屏幕旋转时的片段外观

设计模式---外观模式

外观模式

设计模式之外观模式

java设计模式-外观模式