系統的監控和故障診斷工具
Observer能夠被升級為Expert Observer和Observer Suite來跟蹤多個SNMP設備, 查看任何來自RMON1/2 或HCRMON探針的數據, 提供專家分析和建模功能, 或顯示基於Web的報表。 Observer產品系列能夠提供一個針對即使最複雜的LAN/802.11/WAN/Gigabit網路環境的管理解決方案。
Observer (觀察者)設計模式
觀察者模式的定義
觀察者模式又叫做發布-訂閱(Publish/Subscribe)模式、模型-視圖(Model/View)模式、源-監聽器(Source/Listener)模式或從屬者(Dependents)模式。
觀察者模式定義了一種一對多的依賴關係,讓多個觀察者對象同時監聽某一個主題對象。這個主題對象在狀態上發生變化時,會通知所有觀察者對象,使它們能夠自動更新自己。
一個
軟體系統常常要求在某一個對象的狀態發生變化的時候,某些其它的對象做出相應的改變。做到這一點的設計方案有很多,但是為了使系統能夠易於復用,應該選擇低
耦合度的設計方案。減少對象之間的耦合有利於系統的復用,但是同時設計師需要使這些低
耦合度的對象之間能夠維持行動的協調一致,保證高度的協作(Collaboration)。
觀察者模式是滿足這一要求的各種設計方案中最重要的一種。
觀察者模式的類圖
可以看出,在這個
觀察者模式的實現里有下面這些角色:
抽象主題(Subject)角色:主題角色把所有對觀察者對象的引用保存在一個聚集裡,每個主題都可以有任何數量的觀察者。抽象主題提供一個接口,可以增加和刪除觀察者對象,主題角色又叫做抽象被觀察者(Observable)角色,一般用一個
抽象類或者一個接口實現。抽象觀察者(Observer)角色:為所有的具體觀察者定義一個接口,在得到主題的通知時更新自己。這個接口叫做更新接口。抽象觀察者角色一般用一個
抽象類或者一個接口實現。在這個示意性的實現中,更新接口只包含一個方法(即Update()方法),這個方法叫做更新方法。
具體主題(ConcreteSubject)角色:將有關狀態存入具體現察者對象;在具體主題的內部狀態改變時,給所有登記過的觀察者發出通知。具體主題角色又叫做具體被觀察者角色(Concrete Observable)。具體主題角色通常用一個具體子類實現。
具體觀察者(ConcreteObserver)角色:存儲與主題的狀態自恰的狀態。具體現察者角色實現抽象觀察者角色所要求的更新接口,以便使本身的狀態與主題的狀態相協調。如果需要,具體現察者角色可以保存一個指向具體主題對象的引用。具體觀察者角色通常用一個具體子類實現。
從具體主題角色指向抽象觀察者角色的合成關係,代表具體主題對象可以有任意多個對抽象觀察者對象的引用。之所以使用抽象觀察者而不是具體觀察者,意味著主題對象不需要知道引用了哪些ConcreteObserver類型,而只知道抽象Observer類型。這就使得具體主題對象可以動態地維護一系列的對觀察者對象的引用,並在需要的時候調用每一個觀察者共有的Update()方法。這種做法叫做"針對抽象編程"。
星際爭霸的一種單位
基本信息
種族:神族(Protoss)
中文名:觀察者
等離子護盾:20
生命值:SC1:20 SC2:40
需要:水晶25,天然氣75,耗費人口1,時間33秒 星際爭霸2:水晶50,天然氣100,耗費人口1,時間33秒
攻擊:0
等離子護盾:0(升級後加三)
防禦:0(升級後加三)
傳送建築:機械工廠(Robotics Facility)
傳送熱鍵:o
兵種介紹
小巧的觀察者是星靈重要的偵查兵種。他們經常遊走在戰場各處,不斷的刺探敵方情報。另外還有很重要的一點,觀察器還能探測到敵方的隱形單位。
這些小小的飛行器的作用是偵查廣闊的荒野,或者觀察並記錄下戰鬥以研究,同時記載入星靈的檔案。它們複雜的感測器矩陣占用了它們自帶功率的大部分,使得能夠用於防禦的能量並不充足;但是他們可以輕鬆地解除敵人的偽裝,或者用自己的偽裝欺騙敵人。這種能力使得觀察器成為戰場上重要的輔助單位。 用於深空探測的觀察器常常沒有任何防禦系統。但是,設計為戰區使用的型號裝備了微型偽裝力場以隱藏自身、欺騙敵人。感測器的精巧細小也使得它們能夠節省出足夠的能源來長時間維持隱形力場。