2011-06-06 61 views
0

我試圖找出是爲了一個Web應用程序需要有顧慮固分離層。 我正在與大中型應用程序和頻繁與對方交互的實體合作。Web應用層幫助需要

到目前爲止,我有以下

  1. 實體層 - 模型的業務實體和跨應用程序使用

  2. 庫層 - 優惠具有持久性,所有的呼叫,並從數據庫

  3. 服務層 - 與業務需求

  4. 對照優惠奧勒層 - 與請求優惠,只要求服務

  5. 視圖層

還爲每個實體有一個專門的倉庫和專用服務

我的問題有以下幾種:

  1. 是,如果確定一個實體服務引用另一個實體服務或應該有不綁定到使用的實體的新服務實體服務?(這是一個更廣泛的問題:層之間的交互是什麼)

  2. 如果存儲庫和服務之間存在另一個層,如管理器(專用於實體,包含與該實體有關的業務邏輯,就像在原始安裝的服務,但只使用,但其他服務),並引用管理器層?(一個服務層TBH這聽起來過於複雜,但如果有人有一些參數的經理層和服務層,請告訴我)

  3. 視圖層是否應該訪問控制器引用的服務?(爲了檢索某些列表或應該查看控制器提供的所有信息?

謝謝

PS:因爲我讀的答案我可能會問更多的問題,如果我認爲他們是重要的,我會更新主哨。 PS2:如果您能分享有關此問題的任何個人經驗,我將不勝感激。

回答

1
  1. 我要說的是,一個服務可以與其他服務協作。
  2. 沒有,這是不必要的過度複雜化。
  3. 控制器確實是景觀的一部分;兩個一起去。視圖可能會調用服務,尤其是如果您正在使用AJAX調用進行Web UI時。