2009-11-10 74 views
0

我想知道如果我可以使用存儲庫模式除了數據庫層以外的任何東西嗎?存儲庫模式:僅用於數據庫源?

我已經使用其中I存儲在ShopCartRepository類陣列的購物車項的詢盤圖案。然後使用ShopCartController類從ShopCartRepository獲取數據。

如前所述,ShopCartRepository只處理數組,因此不處理數據庫。

這是使用存儲庫模式的「合法」方法嗎?

回答

4

Repository模式有利於在其中你想有控制的創建,檢索,修改和刪除數據從一組過程使用的一個集中的地方任何情況下,無論是數據庫表,在內存中的列表,管他呢;這種抽象的力量正是使這種模式具有價值的原因。當然,以任何對您的項目有意義的方式使用它都是合法的。

1

存儲庫模式不僅適用於數據庫。

但是,它通常用於抽象出一些處理數據層域對象的方法。如果您嚴格使用ShoppingCart,那麼爲什麼不將方法添加到ShoppingCart中,以便購物車可以像購物車一樣運行,而不必擔心使用ShoppingCard和ShoppingCartRepository?

+0

我同意,唯一一次我看到使用的存儲庫是如果你選擇的項目的倍數。在購物車的情況下,您永遠不需要向用戶顯示多個購物車,因此似乎應該在該對象本身中處理這些方法。 – Lumpy 2009-11-11 14:11:57