Are OO skills important when someone has a good technical knowledge
-
I am not aware of McConnell placing a monetary value on his arguments. However, he does make a strong case for many code construction practices. For example, McConnell (pg. 445, CC2) references a number of studies that imply that nesting if statements more than 3 or 4 layers deep makes them difficult to understand for most programmers. He then goes on to describe methods to avoid deep nesting in actual code construction.
KramII wrote:
I am not aware of McConnell placing a monetary value on his arguments. However, he does make a strong case for many code construction practices. For example, McConnell (pg. 445, CC2) references a number of studies that imply that nesting if statements more than 3 or 4 layers deep makes them difficult to understand for most programmers. He then goes on to describe methods to avoid deep nesting in actual code construction.
You said that they were "important" from you first response when I stated that there were proven methodogies that do improve code which do not have specific impact on code production. What you posted is a negative assertion. As an analogy I would suppose that code without any line breaks at all is going to be hard to understand. And in both cases a code review/walkthough, which is one of the proven techniques for increasing code quality, would discover both of those. I would like to see a positive assertion about code structures which measurably impacts code quality. That would be analogous to your assertions about patterns.
-
KramII wrote:
I am not aware of McConnell placing a monetary value on his arguments. However, he does make a strong case for many code construction practices. For example, McConnell (pg. 445, CC2) references a number of studies that imply that nesting if statements more than 3 or 4 layers deep makes them difficult to understand for most programmers. He then goes on to describe methods to avoid deep nesting in actual code construction.
You said that they were "important" from you first response when I stated that there were proven methodogies that do improve code which do not have specific impact on code production. What you posted is a negative assertion. As an analogy I would suppose that code without any line breaks at all is going to be hard to understand. And in both cases a code review/walkthough, which is one of the proven techniques for increasing code quality, would discover both of those. I would like to see a positive assertion about code structures which measurably impacts code quality. That would be analogous to your assertions about patterns.
jschell wrote:
I would like to see a positive assertion about code structures which measurably impacts code quality. That would be analogous to your assertions about patterns.
The structures that McConnell proposes to avoid deep-nesting (1) are positive (2) measurably impact code quality. He provides *hundreds* similar examples. I agree with your comment about the benefits of code reviews - these can be very useful for improving code.
-
jschell wrote:
I would like to see a positive assertion about code structures which measurably impacts code quality. That would be analogous to your assertions about patterns.
The structures that McConnell proposes to avoid deep-nesting (1) are positive (2) measurably impact code quality. He provides *hundreds* similar examples. I agree with your comment about the benefits of code reviews - these can be very useful for improving code.
KramII wrote:
The structures that McConnell proposes to avoid deep-nesting (1) are positive (2) measurably impact code quality. He provides *hundreds* similar examples.
Avoiding deep-nesting is a negative assertion. By not doing something there is a positive benefit. A positive assertion is where by doing something, like using patterns, there is a positive (and supported with data) gain.
-
KramII wrote:
The structures that McConnell proposes to avoid deep-nesting (1) are positive (2) measurably impact code quality. He provides *hundreds* similar examples.
Avoiding deep-nesting is a negative assertion. By not doing something there is a positive benefit. A positive assertion is where by doing something, like using patterns, there is a positive (and supported with data) gain.
-
jschell wrote:
Avoiding deep-nesting is a negative assertion. By not doing something there is a positive benefit.
Oh, I see what you're getting at. In that case: Use shallow nesting. Is that positive enough for you? :rolleyes: