设计模式中的外观模式怎么理解

2025-05-08 09:36:37

1、家庭影院设备:DVD播放器、投影仪、自动屏幕、环绕立体声、爆米花机等等。对于的类对象:DVDPlayer、Projector、Stereo、Popcorn、Screen、TheaterLights etc...类图如下:

设计模式中的外观模式怎么理解

3、看一场家庭影院,还这么多步骤。确实很麻烦。我们来分析:爆米花机可以看作是一个子系统、投影鞭徇跋尜仪是一个子系统、音响可以看作是一个子系统等等。我们将各个设备都单独的看作是一个子系统,我们就会发现,这些子系统或许存在着内部关联关系或者是需要统筹协调工作的。有没有更好的解决方案呢?司小司调研之后,决定使用外观模式这种设计模来实现这种需求。我们先来看看外观模式是什么。我们可以将以上各个设备相识或者有关联的操作放到一个方法中,然后对外在提供统一的一个对象接口。这样,比如说,我们先要准备:爆米花机开机、投影仪开机、屏幕自动放下这一组操作放到一个方法中。DVD碟片选择、灯光调暗、播放DVD这一组操作放到一个方法中。关闭各种设备操作放到一个方法中。最后我们就得到了如下的类图:

设计模式中的外观模式怎么理解

5、说明:爆米花机、投影仪、屏幕等我们使用的都是单例模式。因为这些东西,一个家庭一个就可以了。所以这里就使用了单例模式来处理的。在测试类中:

设计模式中的外观模式怎么理解
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢