【发布时间】:2019-01-04 10:15:28
【问题描述】:
我目前正在做一个项目,该项目将减少一个被其他几个类使用的类。
if(condition_A)
{
doSomething();
}
else if(condition_B)
{
classToBeRemoved();
}
else
{
doAnother();
}
我想到的第一个解决方案是否定将要修改的 if-else 语句的条件。
if(condition_A)
{
doSomething();
}
else if(!condition_B)
{
doAnother();
}
这种重构方法不会影响代码的功能,但有时条件过长会影响代码的可读性。
除了否定条件之外,还有其他方法可以保持代码的可读性吗?
【问题讨论】:
-
我会说你的第一个解决方案是最好的可读性。为什么要让它“更具可读性”?
-
你的两个代码块做不同的事情。
classToBeRemoved()是否需要调用? -
@RobertvanderSpek 该代码适用于整个团队,因此其他人应该可以轻松使用。
-
@khelwood 的目标是减少整个项目的课程,因为不再需要它。
-
这个问题主要是自以为是。这也很大程度上取决于具体情况,以及项目中使用的编码约定。
标签: java refactoring readability negation