八.ABSTRACT SERVER

来源:互联网 发布:appui设计软件 编辑:程序博客网 时间:2024/05/20 20:02

ABSTRACT SERVER

上图,一个ProcessMonitor对象负责监控ipass server的进程,这个设计依赖了具体实现,在使用ProcessMonitor的地方都要带上ipass process。
这时可以应用Abstract Server模式避免依赖具体类。

上图中,引入了Monitorable接口,这样ProcessMonitor就可以控制任何实现了Monitorable接口的对象。
 
 
ADAPTER
       接上文,如果存在第三方的SecurityProcess,并且需要ProcessMonitor来监控它,因为得不到SecurityProcess的源程序,或者不能更改其的源程序,此时,就用到了Adapter 模式。
  

       适配器SecurityProcessAdapter实现Monitorable接口,并代理 SecurityProcess,只要构造了合适的适配器,SecurityProcess中不需要有start()和stop()方法,SecurityProcessAdapter会进行适配。这个是对象形式的adapter。
 

       上图为类形式的适配器,适配器同时继承了Monitorable接口和 SecurityProcess类,它比对象形式的适配器更高效,但是代价是使用了具有高耦合度的继承。
原创粉丝点击