Подожди минутку. Эти заявления даже не эквивалентны, не так ли? Я смотрел на них несколько раз, и они не оценивают одно и то же.
Сокращением для первой версии будет использование троичного оператора, а не оператора "и".
SomeProperty = foo() ? bar: false
Однако, за исключением логической ошибки, я согласен со всеми, что более короткая версия более читабельна.
Редактировать - Добавлено
Опять же, если я ошибаюсь и логической ошибки нет, то вторая более читаема, потому что совершенно очевидно, что делает код.
Изменить еще раз - добавлено больше:
Теперь я вижу это. Там нет логической ошибки. Однако я думаю, что это говорит о том, что более длинная версия более понятна для тех из нас, кто еще не пил наш кофе.