-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語句中使用函數所有時間,在許多情況下這是常見的做法。根據他們的樣式文檔,最好是根據誰閱讀代碼的意見。 –