代理模式

    本质是控制对主题对象的访问

 

功能

目的

代理模式

但是代理对象则提供与目标对象相同的接口

控制对象的访问

适配器模式

解决接口之间不匹配的问题,通常为目标对象创建一个不同的接口

 

装饰者模式

 

动态地添加功能

 

观察者模式 Observer

    定义对象之前一种一对多的依赖关系,当一个对象发生改变时所有依赖它的对象都收到通知并自动更新

    本质是触发联动

    Subject 目标对象需要实现

  1. .一个目标需要能被多个观察者观察

 

  1. 提供注册和注销观察者功能
  2. 当目标状态发生变化是,通知所有注册的观察者
       

    合作关系

     

    观察者模式

         

    状态模式

    根据不同的状态选择不同的实现,实现类主机针对状态相应地操作

    可以为与观察都结合,如观察者无法决定哪些对象被联动,就可以状态模式或者策略模式

     

    中介模式

     

    当观察者与主题关系复杂是可以使用中介来封装这些关系