1

我有一个代表朋友(模型)的类。这个 Friend 具有与任何其他模型一样的属性和方法。

为了显示一个包含我所有朋友列表的网页,我需要创建一个函数来返回该数据。

我的问题:我应该把那个功能放在哪里?在 Friend 模型内部(即使它会返回一个对象列表)?或者我应该创建一些其他模型,比如使用 Friend 模型的 FriendList 吗?

谢谢

4

2 回答 2

0

这取决于很多事情。

关于您的项目有多大,您的数据是如何构建的,您想使用哪种模式等等。

也许你应该先看看这些东西:

根据您软件的标准,您可以确定您需要什么。

但是,您可以创建一个名为 的类Friends,它扩展了您的类Friend。在这个类中,你可以有一些加载功能。

我不会将检索函数放在朋友类本身中,主要是因为它不合逻辑。

示例代码

class Friends : List<Friend>
{
public function bool RetrieveAll()
{
//load them here
}
}

编辑:如果你想使用 MVC,你应该去找 Gab 的答案。

于 2013-05-24T21:26:52.307 回答
0

理论上,您的数据将存储在应用程序外部的资源中。负责检索这些数据的对象通常称为 DataAccessObject (DAO)。

在您的情况下,您可以有一个 FriendDAO 公开方法,例如

 List<Friend> retrieveAll();

 Friend retrieveByName(String name);

 persist(Friend friend);

ETC...

MVC 的重点是在不同的层中清楚地分离数据的持久性、操作和显示。

您可以有许多变体,业务逻辑可能位于模型层或控制器中,您可以有一个专用于视图事件处理的控制器(前端控制器)委托给其他控制器或模型。

你命名你的类的方式并不那么重要。

于 2013-05-24T21:29:15.437 回答