理解人工智慧(Artificial Intelligence, AI)系統如何以發布—訂閱原則回應狀態變化。
本案例依原書第 3 章的設計模式、範例或流程重組,並非原書正式案例研究。
原書指出,觀察者模式以發布—訂閱原則運作:被觀察對象維護觀察者清單,狀態改變時通知所有觀察者;觀察者收到更新後執行適當行動。被觀察對象與觀察者鬆散耦合,且只在事件發生時通知,不必持續輪詢。
| 角色/行為 | 原書描述 |
|---|---|
| 被觀察對象 | 維護觀察者清單;提供新增或移除觀察者的方法 |
| 狀態變化 | 觸發通知 |
| 觀察者 | 實作更新方法並採取行動 |
| 效能意義 | 以事件通知取代持續輪詢 |
| 來源問題 | 原書先把訂閱者稱為被觀察對象,後文又以被觀察對象指稱維護觀察者清單的一方 |
在 Excel 建立事件訂閱表,記錄被觀察對象、事件、觀察者、更新方法與行動;請 AI 找出沒有觀察者或沒有行動定義的事件。術語欄須保留原書不一致註記。
原書沒有提供可直接計算的數據,因此不補造結果。
模式藉由鬆散耦合讓元件可因動態變化而調整,不必重設整個系統。原書對訂閱者與被觀察對象的稱呼前後不一致,本教材不以外部知識偷偷修正,而是用功能描述避免混淆並留下來源註記。
請依事件訂閱表追蹤每個狀態變化會通知哪些觀察者,以及各自採取什麼行動。若來源角色名稱有衝突,請列出衝突,不要自行修正。