一、什么是外观模式?
定义: 为子系统中的一组接口提供一个一致的界面(接口),外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
通俗理解: 1、客户端不需要知道系统内部的复杂联系,整个系统只需提供一个"接待员"即可。 2、定义系统的入口, 相当于一个简单的工具类封装
个人觉得,外观模式就是对子系统的接口再一次的调用封装,简化调用流程。
二、角色?
角色一:系统对外提供统一接口
角色二:子系统接口
三、案例?
1、比如你要听音乐,玩游戏.
传统方式: 买个游戏机、mp3播放器等
实现: GameServer gameServer = new GameServer();
gameServer.start();
gameServer.stop();
// 听音乐,需要mp3之类的
MusicServer musicServer = new MusicServer();
musicServer.start();
musicServer.stop();
外观模式: 购买个手机,就可以玩游戏,听音乐等,即对玩游戏,听音乐进行了统一的封装,调用统一的接口即可
Phone phone = new Phone();
phone.startMusic();
phone.stopMusic();
phone.startGame();
phone.stopGame();
四、分析?
以上案例对应外观模式的两个角色?
角色一: 系统对外提供统一接口, 即startMusic, stopMusic, startGame, stopGame
角色二: 子系统接口, 即GameServer的start,stop, MusicServer的start,stop
重要的事情说三遍
重要的事情说三遍
重要的事情说三遍
个人理解: 外观模式就是对子系统的接口进行统一的封装,外部不关心具体的子系统接口实现细节,统一调用封装的方法即可
网友评论