12
「ビジネスロジックは、モデルではなくサービス内にあるべきです」とどれくらい正確ですか?
状況 今晩、私はStackOverflowに関する質問に回答しました。 質問: 既存のオブジェクトの編集は、リポジトリレイヤーまたはサービスで行う必要がありますか? たとえば、借金のあるユーザーがいる場合。彼の借金を変えたい。UserRepositoryで実行するか、たとえば、BingingServiceなどのサービスでオブジェクトを取得して編集し、保存する必要がありますか? 私の答え: オブジェクトを同じオブジェクトに変更する責任を負い、リポジトリを使用してこのオブジェクトを取得する必要があります。 状況の例: class User { private int debt; // debt in cents private string name; // getters public void makePayment(int cents){ debt -= cents; } } class UserRepository { public User GetUserByName(string name){ // Get appropriate user from database } } 私が受け取ったコメント: ビジネスロジックは実際にはサービス内にある必要があります。モデルではありません。 インターネットは何と言っていますか? …