Что будет считаться более ремонтопригодным?
if (a == b) c = true; else c = false;
или же
c = (a == b);
Я пытался посмотреть в Code Complete, но не могу найти ответ.
Я думаю, что первое является более читабельным (вы можете буквально прочитать его вслух), что, как мне кажется, делает его более понятным. Второй, безусловно, имеет больше смысла и уменьшает код, но я не уверен, что он так удобен для разработчиков на C # (я бы ожидал увидеть эту идиому больше, например, в Python).
c = a==b ? true : false;
else c = false
для первого или сделать назначение||=
во втором.