2009-11-21 94 views
1

服務層和存儲庫在紙上看起來很簡單,但我讓自己感到困惑。啊與服務層很混淆

所以這裏是我很困惑。我有一個服務層,用於我的PayPal服務層,其中包含與我的PayPal相關的驗證邏輯以及連接到我的Paypal存儲庫並返回結果(並在需要時執行更多邏輯)的方法。

現在,在我的登錄頁面上,我需要運行一些檢查以查看用戶訂閱是否已過期。所以我必須檢查我的一些PayPal表格。

現在我將這個邏輯放在PayPal服務層嗎?或者我的sigin服務層?

我不確定哪一個是最適合放置它的地方。

回答

4

我會讓signin層調用PayPal圖層。

聽起來好像您正在使用PayPal進行身份驗證和付款。因此,您可能需要考慮如果您使用另一種身份驗證方法替換PayPal,可能會發生什麼情況。

一般來說,層間互相呼叫應該沒有問題。

+0

如果service1使用service2而service2使用service1會怎麼樣?這是一般的問題還是不好的設計? –

+0

嗯,這是一個好點。我也想知道服務層調用另一個服務層。我不確定這是否是糟糕的設計。 – chobo2

+0

,這取決於。如果您僅通過接口訪問服務,並且接口是獨立的,那麼這不是問題。聽起來這些服務可能做得太多了。 我想看看@JeremyMcGee說的分離責任(有單獨的認證和支付)。 – JBland