On Sat, Mar 15, 2008 at 12:11:37AM -0700, Gregory K. Ruiz-Ade wrote:
Most times it's because of offenses like
myresult = obj1.meth1(obj2.meth2(obj3.meth3(arg1, arg2,
obj2.meth5(arg5))));
Often this kind of construct suggests that the classes aren't broken up in
the right place. This particular example is probably normal usage, since
only the interface of each object is used, but I've seen:
obj1.meth1(arg).meth2(arg).meth3(args);
or worse still
obj1.field1.field2.field3.meth2(arg).field5.meth4(argument);
If code in a method starts diving down inside of other objects, the
abstractions aren't working.
David
--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg