8 ms·
I think the main problem is the lack of braces means you have to rely on white space to figure out what the hell is going on. That's the main reason why I reli
by redcap 17y ago
I think the main problem is the lack of braces means you have to rely on white space to figure out what the hell is going on.
That's the main reason why I religiously put open and close braces on even the smallest if/else blocks as it dramatically improves the readability of the code.
If the mozilla code style specified that you have to use braces no matter what then they wouldn't be having this problem.
Of course, I'm probably arguing with hackers who prefer to use constructs like 'return (a > b ? a : b)' rather than write readable code.
This is coming from someone who likes to put spaces after and before parentheses so it makes it easier to figure out what's going on.
e.g. if ( ( y > x ) || ( x < 10 ) ) - this makes things easier to read (for me) when you start to get a hell of a lot of nesting going.
- philwelch 17y agoThe ternary operator is perfectly readable if you spend even the slightest amount of time getting used to it. I like spacing my parens too, but what you wrote isn't as readable to me as: ( (y > x) || (x < 10) ) Spacing inside your terminal pair of parens only makes your atomic expressions harder to read. I also like multiline expressions: if ( (x == 10) || (y == 10) || (x > y) ) { ..... }
- anamax 17y agoWhy do you put the operators for multiline expressions at the end of the preceeding line instead of at the beginning of the next line? With statements, the first token on the line tells you what it's doing and the indentation tells you about its relationship to statement on the previous line. Why not do something similar for multi-line expressions?
- philwelch 17y agoI like aligning the atomic conditional tests I'm or'ing together, and that's the most space-efficient way to do it. I guess I could indent the first line more and put the or operators on the left, though.