Bèr Kessels wrote:
Op woensdag 22 augustus 2007, schreef Earnie Boyd:
As you can see I don't think break is always a good thing, it should either be return or break and return should not be embodied in the case.
having more then one return in a function is generally a (very) bad practice. It makes the code hard to read, and far more complex then needed.
Bèr
I have followed this coding practice (one return) for a long time (almost 20 years) for the reason Ber mentions -- it makes it easier to maintain and debug. Returns that are embedded 10 levels deep within loops and conditionals are harder to find while debugging. However, I do not support making this a coding standard -- maybe just a suggestion. Since we code in an interpretive language, fewer lines of code has it's benefit. And it is certainly easier to code a return statement than to set a flag and/or return value, issue a break, and make sure that the code breaks properly to the final end. What I think is needed is some suggestions and some code samples. If you make it a coding standard, then I'll probably add it to coder, and I think we'll be flagging lots of innocuous returns. For example, I do prefer: function example() { if (variable_get('example', 0)) { // ... do something and return return 'something'; } // ... falls off the end with an empty return } to function example() { if (!variable_get('example', 0)) { return; } return 'something'; } Partially for the single return, but also because the logic is cleaner. -- Doug Green douggreen@douggreenconsulting.com 904-583-3342 Bringing Ideas to Life with Software Artistry and Invention...