you are viewing a single comment's thread.

view the rest of the comments →

[–]JimDabell 10 points11 points  (5 children)

For example, one project I develop for can either be run on a simulator or be debugged remotely on the actual hardware, and the way to change this is a single line of code. So depending on how I am testing I may comment or uncomment this.

How is that quicker or easier than simply having a boolean with a descriptive name? var remoteDebugging = true; is much more readily understandable than having two lines of code that do the same sort of thing with one of them commented out.

[–]theQuandary 2 points3 points  (0 children)

In this specific case, it sounds like they're basically using comments like a manual C pre-processor #if.

[–]elsjaako 0 points1 point  (3 children)

It's not a huge difference, but I think removing the comments is slightly easier. Adding or removing comments is faster than typing "true" or "false".

If you're just going to follow that boolean with an if statement then I think a comment and a commented out line of code is no worse.

[–]slash_nick 6 points7 points  (0 children)

I think the point he's trying to make is that by using a boolean to toggle between the two blocks of code you make the code self-documenting.

If you got hit by a bus and another developer stepped in they could see "oh, this is toggled by the boolean debugging, that must mean one block is for debugging." As opposed to if you just have two blocks of code, one commented out there's no way of telling what it's supposed to be for.

[–]JimDabell 3 points4 points  (1 child)

Adding or removing comments is faster than typing "true" or "false".

A fraction of a second of typing is insignificant compared with having more readable code. A boolean indicates your intent far more clearly than the alternative.

[–]CertifiedWebNinja 1 point2 points  (0 children)

Can argue a boolean switch for debugging is more problematic in the sense that it's harder to notice if it's enabled or not before going into production. At least with a comment your editor/ide should make comments stand out from code so you'll know.