-1
今天我在代码审查中发现了一个代码块,这个代码块让我感到奇怪,但我找不到这个代码对我来说很奇怪的客观原因。为什么在条件不好的情况下做事
的代码看起来是这样的(它的PHP)
// inside a for loop
if($thing->isGood() === true && saveThing($thing)) {
$successfulSavedCount++;
}
// for end
function saveThing($thing) {
// this method persists $thing to the database
}
察看$this->isGood() === true
是为我好,但呼吁,做什么感觉错了我的方法。
很久以前,我在某处读到在做情况是件坏事,但我不记得为什么它是不好的风格。
也许有人可以解释为什么它不好(或罚款)?
这可能有助于:[为什么副作用在函数式编程中被视为邪恶?](https://softwareengineering.stackexchange.com/q/15269/22659)(或不) –
人们在if语句中使用函数所有时间,在许多情况下这是常见的做法。根据他们的样式文档,最好是根据谁阅读代码的意见。 –