Quote Originally Posted by beetle
Brenden, I think you make a good point but base it around the wrong argument: that methods that return "something" should be evaluated for "smell". That, in and of itself, is terribly misleading.

What you're really talking about is changing those methods when composition can be applied to your class structure.

So, to that point, I would agree with the promotion of composition where applicable.
I guess I havent communicated those points very well. What I actually have been doing is looking for return statements in code I just wrote and evaluating it to see if its a bad spot to return. Maybe thats not the best method but its something Ive been doing. What I would like to do, is to be able to make the right decision before hand and not have to refactor things like this, but Im working on it.
Obviously none of this is new, but can be found in Refactoring by Martin Fowler. I think the biggest difference between procedural, Pseudo-OO and OO code is the amount of correct refactoring that has gone into it.