例如,如果我有一个有债务的用户。我想改变他的债务。我应该通过获取对象、编辑并保存它在 UserRepository 中还是在服务中执行它,例如 BuyingService ?
问问题
2448 次
1 回答
8
您应该将改变对象的责任留给同一对象,并使用存储库来检索该对象。
示例情况:
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
}
}
用法(杰克支付 10 欧元):
userRepository.GetUserByName("Jack").makePayment(1000);
请记住,这只是一个示例方法。在编程中没有一种固定的方式来实现某件事,你可以完全不同地做到这一点。
于 2013-11-09T18:42:12.587 回答