2013-04-29 47 views
0

我正在編寫一個簡單的數據顯示應用程序,它具有UI表示層,數據訪問層和包含數據集的公共層。由於這個應用程序的重量相對較輕(不寫入/更新數據),我認爲使用數據門面模式會比使用業務邏輯層更容易。編寫數據門面類庫與將其包含在數據訪問層中

問題: 我一直在Facade上寫下這篇文章:http://msdn.microsoft.com/en-us/library/orm-9780596527730-01-04.aspx,在圖4.5中,門面與子系統(在我的情況下是數據適配器)寫入到同一個庫中。你會採取這種方法與爲數據門面一起編寫新的C#類庫嗎?

在我利用數據門面這樣我的UI:

public partial class MyDataApp : Form 
{ 
    DataFacade ApplicationDataFacade = new DataFacade(); 
} 

回答

0

根據門面模式的定義,關鍵是使用創建一個類來簡化複雜的庫或API整合到簡單的人一個簡單的界面,以整個圖書館。

所以要回答你的問題,當涉及複雜的庫時,門面模式是有意義的,這意味着它不能替代創建業務邏輯,它是抽象的。如果您選擇爲整個圖層使用單個類,則它將在單個類中承擔所有這些責任,這不是門面模式的後面。

當項目很小時嘗試使用這種方法是可以理解的,但要記住要評估系統能夠及時增長多少,以避免維護時間過長。

+0

我正在寫數據門面房屋(沒有雙關語意思)幾個數據適配器,對應不同的數據庫。它具有返回填充數據表的方法,即UI中的網格視圖。 – discofighter411 2013-04-29 16:15:10

+0

在這種情況下,如果您正在做的唯一一件事是從數據庫獲取數據,則不需要使用商業邏輯。但是,評估這些數據是否需要過濾和驗證,商業邏輯可能會派上用場。 – RaulMonteroC 2013-04-29 16:24:50