1. 程式人生 > >設計模式4(代理模式,觀察者模式)

設計模式4(代理模式,觀察者模式)

代理 bject body border 策略 解決 設計模式 server 觀察者

代理模式

本質是控制對主題對象的訪問

功能

目的

代理模式

但是代理對象則提供與目標對象相同的接口

控制對象的訪問

適配器模式

解決接口之間不匹配的問題,通常為目標對象創建一個不同的接口

裝飾者模式

動態地添加功能

觀察者模式 Observer

定義對象之前一種一對多的依賴關系,當一個對象發生改變時所有依賴它的對象都收到通知並自動更新

本質是觸發聯動

Subject 目標對象需要實現

  1. .一個目標需要能被多個觀察者觀察

  1. 提供註冊和註銷觀察者功能
  2. 當目標狀態發生變化是,通知所有註冊的觀察者

    合作關系

    觀察者模式

    狀態模式

    根據不同的狀態選擇不同的實現,實現類主機針對狀態相應地操作

    可以為與觀察都結合,如觀察者無法決定哪些對象被聯動,就可以狀態模式或者策略模式

    中介模式

    當觀察者與主題關系復雜是可以使用中介來封裝這些關系

設計模式4(代理模式,觀察者模式)