Единственный способ, которым я мог видеть, что это идет не так, - это если логический фрагмент не имеет имени, которое имеет смысл, и имя выбирается в любом случае.
//No clue what the parts might mean.
if(price>0 && (customer.IsAlive || IsDay(Thursday)))
=>
first_condition = price>0
second_condition =customer.IsAlive || IsDay(Thursday)
//I'm still not enlightened.
if(first_condition && second_condition)
Я обращаю на это внимание, потому что принято создавать правила, такие как «комментировать весь ваш код», «использовать именованные логические значения для всех if-критериев, состоящих более чем из 3 частей», только для получения комментариев, которые семантически пусты для следующего вида
i++; //increment i by adding 1 to i's previous value