2013-07-03 99 views
4

我正在使用MVP在C#中構建一個項目。我以前有一個包含CRUD操作的IModel接口,但之後將它分成了許多模型接口(例如INotebookModel,ICategoryModel,IItemModel等),每個模型接口都包含CRUD操作。MVP - 演示者是否應該有一個整體模型或多個模型?

最好有一個CRUD方法委託給適當的特定模型(例如create(String type))或只是在演示者中持有對每個特定模型的引用的整體模型?

如果有多個模型是不好的方法,我該如何傳遞適當的參數,以便可以創建/更新模型對象?由於每個對象需要不同的信息。

回答

0

擁有不同的模型並不是一個壞方法。

這肯定會讓你的設計更復雜,但肯定會增加你的應用程序的可維護性。 如果你正在構建一個需要在未來升級中進化的應用程序,然後將你的模型分成幾個模型。如果你想在你的應用中添加一個不同的實體,這將有助於你。您可能會將您的書籍分配給個人,然後您將添加一個IPersonModel界面,另外三個界面(INotebookModel,ICategoryModel,IItemModel)將保持不變。但是,如果您的應用程序很簡單,而且您希望快速開發,則只需將您的模型集中到一個大型模型中即可。但要小心,如果你的應用程序變得越來越大,這個模型會變得越來越複雜,因爲它將處理幾乎所有的應用程序的責任,你將不得不將其分解成幾個。

如此分離您的責任感,它是SOLID之一。你可以走得更遠,看看這個:http://en.wikipedia.org/wiki/SOLID_(object-oriented_design)

相關問題