让我们假设一个逐步的代码
stepWise () {
Object a = getA ();
Object b = getB (a);
Object c = getC (b);
}
如果对于这样的代码我需要添加验证,我需要建议最干净的方法。
stepWise () {
Object a = getA();
if ( a!= null ) {
Object b = getB(a);
if (b! = null) {
Object c = getC(c);
}
}
}
现在唯一的问题是如果添加更多序列(getD(),getE()等)会造成更多混乱。
任何干净的解决方案?
或者我应该只在相应的函数中验证参数是否为空?
答案 0 :(得分:0)
考虑使用Null Object设计模式作为替代方案,以避免执行所有这些检查。
还不清楚为什么你有:
getB(a)
而不是:
a.getB();
最初我以为你可以这样做:
stepWise () {
Object a = getA();
Object b = getB();
Object c = getC();
checkNotNull(a);
checkNotNull(b);
checkNotNull(c);
...
但是你设计课程的方式是不可能的。