什麼是 Prism?
企業級開發規模龐大,需拆分模組由不同團隊並行開發測試,最後整合。Prism (Composite Application Guidance for WPF) 即為解決模組劃分、組織、通訊而生的 WPF 複合 UI 框架。
與 CAB 差異
Prism 非 CAB 的 WPF 版本,而是全新打造。雖借鑑 CAB 核心概念(Modularity、UI Composition、Services、DI、Event Brokering),但重新設計原因:
- 用戶回饋:CAB 過重、過複雜、緊耦合、難上手;需支援漸進式採用與現有庫共存。
- CAB 不原生支援 WPF:雖可互通,但非建立於 WPF 核心優勢(Attached Property、Template、靈活 UI 組合)之上。
- 開發模式不同:CAB 基於 WinForms 經驗,WPF 具獨特開發模式。
選擇指南
- 複合 WinForms 應用 → CAB/SCSF
- WinForms 主體 + 少量 WPF → CAB/SCSF + WPF Interop
- 遷移既有 CAB 應用至 WPF → CAB + Smart Client Contrib (可建 WPF View)
- 新開發複合 WPF 應用、或升級既有 WPF 為複合架構 → Prism
資源下載
- Composite Application Guidance for WPF 下載
- 文件、Stock Trader 參考實作、QuickStarts、Hands-On Lab
- CodePlex 社群、EULA 授權