2014-06-12 97 views
0

我正在編寫一個供應應用程序,它可以獲取用戶添加或刪除請求,然後基於用戶的指定角色去應用指定的屬性並在系統中創建它們或去除並移除用戶來自系統中的指定角色。策略模式的適當應用

這是使用策略設計模式或其他模式有效的好實例嗎?每個用戶都有相同的操作,但是每個操作都會根據用戶的上下文而有所不同。

+0

檢查命令模式。也許它會在你的情況下更好地工作。 –

+0

會做。謝謝! –

+0

是的,策略聽起來適合捕捉用戶之間的差異。 –

回答

-3

使用狀態模式。

我應該至少有30個漢字發表該回答。所以我除了輸入一行代碼外,還輸入了這個垃圾行。

+4

-1。如果你可以提供一個很好的理由,爲什麼國家模式是適當的,那麼我會upvote。 – DeanOC

+3

你的回答沒有解釋爲什麼OP應該使用狀態模式。如果Jon Skeet告訴我使用我想要的狀態模式,但即使他會告訴我爲什麼這是最好的選擇。 – DeanOC

0

我覺得戰略模式是可行的。

如果可以對不同類型/用戶組進行操作分類和混合,您可能也需要嘗試裝飾器模式:從字面上看,您可能需要在識別用戶角色時累積一些操作,如:

角色1 - 操作1

角色2 - 操作2

角色3 - 操作3

用戶有角色1和3,那麼他應該已經運行1和3集成到一個操作。

+0

幸運的是,用戶並不只有一個角色,所以我不認爲我必須使用裝飾器模式。感謝您提出它! –