Windsor 容器物件註冊策略評估
在將 Windsor 整合到應用程式時,一個問題出現了:誰應該負責註冊對象?本文深入探討了各種方法及其各自的優缺點。
註冊策略
1. 基於層的註冊
在這種方法中,每一層都註冊它自己的物件。這使註冊過程模組化,但可能導致循環依賴,其中各層依賴彼此的組件。
2. 依賴註冊
在這裡,每一層都註冊其依賴項。例如,業務層將註冊資料存取元件。這消除了循環依賴,但引入了更複雜的註冊過程。
3. 基於應用程式的註冊
在這種情況下,應用程式(或測試應用程式)註冊所有物件。這種方法將註冊過程集中化,並簡化了配置。
建議方法
通常,建議在應用程式的根目錄配置容器,以確保最大限度的模組化。這種方法稱為「組合根」。
測驗最佳實務
測試不應依賴容器。相反,可以直接向物件和模組提供測試替身。這促進了與容器無關的設計,並簡化了測試。 Windsor 提供「安裝程式」來封裝元件註冊邏輯,支援結構化和組織化的方法。
以上是我應該如何在 Windsor 容器中註冊物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!