| ▲ | recursivedoubts 6 hours ago | |
interesting story as an aside, I think the original code, with the if statement, was clearer and would be easier to debug, etc, even if it was a bit longer | ||
| ▲ | jpollock 2 hours ago | parent [-] | |
I prefer the second. :) It's about the cognitive load and having to follow branches. The second version minimizes the cyclomatic complexity, taking it to 1. The reader doesn't have to keep the if statement in mind when reading through the code, and doesn't have to worry about all the ways the code can get there if they want to modify it (e.g. to add logging, metrics, other logic). Whether or not consume should be a separate function depends on how often it's called. Here, I'm guessing it's once. :) | ||