【发布时间】:2012-10-09 09:34:09
【问题描述】:
处理方法执行所依赖的属性的最佳方式是什么?
假设您有一个具有 2 个属性的类和一个对这 2 个属性执行某些操作的方法。实例化类,设置属性,然后执行方法会更好(不带参数);还是实例化类,然后执行方法,传入将设置属性的参数?
例如:
class Person ...
string Name ...
string Address ...
void Save() {
Database.SavePerson(this.Name, this.Address);
}
--- 或 ---
class Person ...
string Name ...
string Address ...
void Save(string name, string address) {
this.Name = name;
this.Address = address;
Database.SavePerson(this.Name, this.Address);
}
在第一个示例中,如果在调用 Save 方法之前尚未设置 Name 和 Address,则会出现错误。因此,您似乎必须验证这些属性是否已在方法中设置。
第二个示例强制用户提供执行该方法所需的数据。但是,这似乎有点多余,因为传入的参数已经是对象的属性。
有没有“最好”的方法来做到这一点?
提前致谢。
【问题讨论】:
-
“最佳”方式是对您的用例更有意义的方式。
-
毫无疑问,你的第二个例子是一个不好的方法。
标签: c# .net oop dependencies