[英]Presentation layer architecture in an enterprise application
在我們公司,我們正在開發一個包含幾個模塊的應用程序。 該體系結構已經定義好,但是我對表示層有幾秒鍾的想法,我真的很想聽聽您的意見。 架構如下:
我們在Foreach模塊中創建了幾個名稱空間,這些名稱空間將在其自己的類庫中進行編譯。 因此,對於我們的CRM模塊,我們創建以下內容:
我們為財務,HRM,供應等模塊創建相同的類庫結構:
我們還考慮了“交叉問題”,為此,我們創建了以下名稱空間和類庫
到目前為止,這就是我們的體系結構,現在,我正在嘗試尋找一種設置PresentationLayer的正確方法。 例如,我應該為每個模塊創建一個PresentationLayer庫(ProductName.CRM.PresentationLayer,ProductName.Finance.PresentationLayer等)。 並創建一個整體ProductName.PresentationLayer-library,該引用具有對所有其他Module.PresentationLayer-libraries的引用。 然后,此整體ProductName.PresentationLayer將具有Login / MainForm功能,並具有啟動在PresentationLayer模塊之一中實現的表單的功能。 就像應用程序進入其他模塊的入口一樣。
要么...
我應該只制作一個ProductName.Presentation-library,其中包含所有模塊的所有表單。 這樣,我可以輕松導航到其他表單,而不必擔心模塊之間要使用其他表單時的引用(有時它們會這樣做)。
第一個解決方案對我來說聽起來不錯。 但是,當來自不同模塊的表單想要相互導航時,將很難實現這種功能,因為這兩個功能中只有一個可以引用另一個功能。
我真的很想聽聽您對我正在處理的問題的意見,也許有人可以給我適當的解決方案或想法,讓我可以使用。
在此先感謝,干杯!
如果表單需要交換數據,則始終可以創建表單實現的接口。 實際上,擁有很多相互了解的表格可能不是一個好主意,因為從長遠來看,這會造成維護和增強問題。
通過使用接口和可能的某種Locator服務,您可以避免在表單之間進行嚴格的依賴關系-然后您可以自由使用任何一種架構模型(1個大型程序集與許多較小的程序集)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.