3 ms·
> Not having the braces makes it so easy to accidentally break in later changes or refactoring. Did you mean “not having a linter”? Because once you have a lin
by Timwi 2y ago
> Not having the braces makes it so easy to accidentally break in later changes or refactoring.
Did you mean “not having a linter”? Because once you have a linter you no longer need the braces because the autoformatting will always fix the indentation.
- climb_stealth 2y agoI was thinking of a case like this: if (foo) return; Perfectly valid and people do it. But then later on someone might put a debug statement above the return to check something. Or add some other logic. if (foo) doSomething(); return; And suddenly the logic is broken and the return falls out of the if-condition. It looks fairly contrived with an example like this but easy to do when code is a bit more complicated or people are tired or rushed. It's a good habit to always enforce braces for if-conditions as it defeats that whole category of mistakes. Fairly innocent but can be so hard to find because of that. A linter would enforce having braces and solve the issue. And for codebases without a linter it is a good habit to just go with the braces.
- Timwi 2y agoI think you misread what I wrote. Your example could be fixed by braces, but it can equally well be fixed by just automatically fixing the incorrect indentation. Visual Studio has been doing this for a decade already. It's really not rocket science.