1

Friend (モデル) を表すクラスがあります。この Friend には、他のモデルと同様に属性とメソッドがあります。

すべての友達のリストを含む Web ページを表示するには、そのデータを返す関数を作成する必要があります。

私の質問: その関数をどこに置くべきですか? Friend モデルの内部 (オブジェクトのリストを返す場合でも)? それとも、Friend モデルを使用する FriendList のような別のモデルを作成する必要がありますか?

ありがとうございました

4

2 に答える 2

0

理論的には、データはアプリケーションの外部のリソースに保存されます。これらのデータの取得を担当するオブジェクトは、通常、DataAccessObject (DAO) と呼ばれます。

あなたの場合、次のようなメソッドを公開するFriendDAOを持つことができます

 List<Friend> retrieveAll();

 Friend retrieveByName(String name);

 persist(Friend friend);

等...

MVC のポイントは、データの永続性、操作、および表示を異なるレイヤーに明確に分離することです。

多くのバリアントを持つことができます。ビジネス ロジックはモデル レイヤーまたはコントローラーに配置できます。ビュー イベント処理専用のコントローラー (フロント コントローラー) を他のコントローラーまたはモデルに委譲することができます。

クラスに名前を付ける方法はそれほど重要ではありません。

于 2013-05-24T21:29:15.437 に答える
0

それは非常に多くのことに依存します。

プロジェクトの大きさ、データの構造、使用したいパターンなどについて。

たぶん、最初に次のことを確認する必要があります。

また、ソフトウェアの基準に基づいて、何が必要かを判断できます。

Friendsただし、クラスを拡張するというクラスを作成できますFriend。このクラス内で、ロード機能を使用できます。

主に論理的ではないため、Friend クラス自体に取得関数を配置しません。

サンプルコード

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

EDIT : MVC を使用する場合は、Gab の回答を参照してください。

于 2013-05-24T21:26:52.307 に答える