2

MVCWebフレームワークのコントローラーに特定の関数を配置するためのベストプラクティスについて質問があります。

ユーザーとタグのコントローラーがあるとしましょう。addTag_to_user()という関数/メソッドがあります。

これをユーザーまたはタグコントローラーのいずれかに配置するための規則またはベストプラクティスは何ですか?

個人的には、タグコントローラーに配置する傾向があります。これは、ユーザーコントローラーが重要な要素であるため、他の機能でいっぱいになる可能性があるためです(たとえば)。したがって、タグコントローラーに配置すると、ユーザーコントローラーの読みやすさが向上します。

編集:たぶん、2つのモデルを扱う関数をどこに配置するかは実際には問題ではありません。他の人の慣習が何であるかを見たいです。

4

1 に答える 1

0

Controller オブジェクトは、モデル ドメインを操作する動作を保持できます。ただし、MVC は通常、ドメインごとに 1 つのコントローラーを持ち、「ユーザー」と「タグ」が同じドメインに属しているように聞こえます。

情報専門家の原則では、誰がこの責任を果たすための情報を持っていますか? タグはユーザーについて何も知りません。論理的な答えは、ユーザーが自分のタグの責任を負うということです。したがって、ユーザー クラスは addTag() 動作を保持します。

于 2012-08-24T09:09:31.910 に答える