我经常看到的最令人震惊的冗余代码构造涉及使用代码序列
if (condition)
return true;
else
return false;
Run Code Online (Sandbox Code Playgroud)
而不是简单的写作
return (condition);
Run Code Online (Sandbox Code Playgroud)
我已经在各种语言中看到了这个初学者错误:从Pascal和C到PHP和Java.你会在代码审查中标记出哪些其他类似的结构?
Pau*_*lin 11
if (foo == true)
{
do stuff
}
Run Code Online (Sandbox Code Playgroud)
我一直告诉开发人员应该这样做
if ((foo == true) == true)
{
do stuff
}
Run Code Online (Sandbox Code Playgroud)
但他还没有得到这个暗示.
Oth*_*ide 10
if (condition == true)
{
...
}
Run Code Online (Sandbox Code Playgroud)
代替
if (condition)
{
...
}
Run Code Online (Sandbox Code Playgroud)
编辑:
甚至更糟糕的是扭转条件测试:
if (condition == false)
{
...
}
Run Code Online (Sandbox Code Playgroud)
很容易读作
if (condition) then ...
Run Code Online (Sandbox Code Playgroud)
使用注释而不是源代码控制:
- 删除或重命名函数而不是删除它们并信任源代码控制可以在需要时为它们返回.
- 添加"RWF Change"之类的评论,而不仅仅是进行更改并让源控制分配责任.
在某处我发现了这个东西,我发现它是布尔冗余的顶峰:
return (test == 1)? ((test == 0) ? 0 : 1) : ((test == 0) ? 0 : 1);
Run Code Online (Sandbox Code Playgroud)
:-)