> In your opinion would it be better to write:
in mine, yes definitely 100% the second code is more readable than the first
in mine, yes definitely 100% the second code is more readable than the first
If anything, adding a nesting level for each chained predicate makes code harder to read, and needlessly so.
The issue is not verbosity. It's the needless addition of nesting levels and independent expressions in a non-idiomatic way, which greatly increase the cognitive load of checking a single row of chained predicates. It's bad code.
if(an expression) {
if(another expression) {
}
}
is MUCH lower than if(an expression && another expression) {
}
which always raise the questions of:- did the author think about operator precedence
- did the author want to use && or &
- did the author think about short-circuiting (as evidenced in this very thread, a lot of people do not)