特效设计也需要设计模式—— 门面(Facade)模式Java

Posted panda1234lee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了特效设计也需要设计模式—— 门面(Facade)模式Java相关的知识,希望对你有一定的参考价值。

效果图

 

 外观模式(也称为门面模式),外观模式也属于结构型模式,这个场景其实在日常开发中使用的频率还是非常高的,也非常好理解的,简单的来讲就是将多个复杂的业务封装成一个方法,在调用此方法时可以不必关系具体执行了哪些业务,而只关心结果即可。

外观模式是隐藏了系统的复杂性,能够为子系统中的一组接口提供一个统一的接口。客户在使用系统时不必和子系统打交道了,降低了客户和子系统间的耦合。

 

完整代码

点类 —— PointObj 的定义(子系统角色之一)

class PointObj{
  float x;
  float y;
  
  PointObj(float ex, float why){
    this.x = ex;
    this.y = why;
  }
}

分支类 —— Branch 的定义(子系统角色之一)

稍微有点复杂,值得注意的是它在构造函数中还递归了自身的构造函数

class Branch {

  int level;
  int num;

  ArrayList<PointObj> outerPoints = null;
  ArrayList<PointObj> midPoints = null;
  ArrayList<PointObj> projPoints

以上是关于特效设计也需要设计模式—— 门面(Facade)模式Java的主要内容,如果未能解决你的问题,请参考以下文章

10-门面(Facade)模式Ruby实现

设计模式:门面模式(Facade)

Tomcat源代码-门面模式(Facade)

软件设计模式——门面模式(Facade)

Java 设计模式 之 门面模式

编程思想设计模式结构模式Structural门面模式/外观模式Facade