【发布时间】:2015-07-10 20:14:10
【问题描述】:
我正在尝试在我的系统中记录信息。每当记录时,我都会检查状态是否有效,然后才记录该信息。
//doing this logging all over the place in my code base.
if(checkIsValid){
Object obj =new Object(string1,Integer2,........String10);
log(obj);
}
这里的问题是如何重构我的代码,这样我就不必到处重复这段代码来记录日志了。
其中一个解决方案是我可以写一个这样的补充方法。
method(String1,Integer2,......String10){
if(checkIsValid){
Object obj =new Object(string1,Integer2,.........String10);
log(obj);
}
}
但缺点是我必须将一些字符串作为参数传递给我的方法,这看起来一点也不干净。
【问题讨论】:
-
为什么不在
log()方法中验证? -
如果不想传10个参数,应该考虑传
List<String> -
但是我每次都会创建一个对象并在检查失败时丢弃它,这仍然不是一个好的优化!
-
这可能是一个混合字符串和整数参数,请参阅编辑!
-
不完全重复,但很有帮助:stackoverflow.com/questions/31121513/…
标签: java design-patterns refactoring