996引擎-源碼學習:PureMVC Lua 中的 Facade 類
- 1. 核心概念
- 1.1 外觀模式
- 1.2 多例模式
- 2. 關鍵組件
- Notification
- Controller:
- Model
- View
- 3. 主要功能
- 4. 初始化流程
- 5. 通信機制
- 6. 生命周期管理
- 1. Facade 初始化流程圖
- 2. 發送通知時序圖
- 中介者 PlayerBestRingLayerMediator
- OpenLayer 打開界面
- 3. 類圖
1. 核心概念
1.1 外觀模式
Facade
是 PureMVC Lua 框架的核心類
(見名知意,它是一個外觀模式)用于為復雜子系統提供一個簡單接口。它封裝了框架的核心組件(Controller、Model、View
)及其交互邏輯。外觀模式將子系統與客戶端進行解耦,提高子系統的獨立性和可移植性。
1.2 多例模式
Facade
類又采用了 Multiton
模式。(外觀+多例)模式
- 獨立管理:適用于大型應用,為不同子應用或模塊創建各自的
Facade
實例,
如游戲中的主游戲、商城、社交模塊,各模塊的Command
(命令模式)、Proxy
(代理模式) 和Mediator
(中介模式) 由對應Facade
管理,避免相互干擾 。 - 資源隔離:不同模塊的資源,如數據緩存、視圖組件等,通過各自的
Facade
實例獨立分配管理?