Code Style Reflects Organization

After discussing some code examples from RobertMartin's books, it seems that perhaps his designs are for a more bureaucratic organization than where I usually am. I tend to purposely avoid organizations that I consider overly bureaucratic, so perhaps my view of code and Robert's are shaped by the organizations that we target. It seems like he separates concepts in order to partition staff. However, such barriers create more total work in my opinion because one has to manage the extra interfaces between the barriers. But if you are dealing with developers who are perhaps not very skilled or not very motivated, then heavily partitioned code may be the way to go as far as predictability and developer progress monitoring. Large organizations tend to prefer predictable workers sometimes at the expense of productive workers, perhaps those with a tinge of CowboyCoder personality. I get bored spending too much time managing parameter lists and pushing and pulling stuff in and out of interface layers. I feel better when the code is actually doing real work, solving the problem at hand.

I don't know if procedural/relational is as bureaucratizable as OOP. It is not something I've really cared about in the past so don't know the upper limits of p/r in that category. I try to keep my code fairly lean and simple regardless of who will be working on it. I don't partition concepts unless there is a clear need. (It is tough to partition by everything where there are multiple conflicting division candidates anyhow, which is usually the case. Martin's choices are thus somewhat arbitrary in my opinion.)

PaulGraham has made some similar remarks in his criticism of OOP. See points 2 and 3 at: http://www.paulgraham.com/noop.html

Excerpts:

--top


See also: YagNi, SeparationOfConcerns


CategoryInfoPackaging


EditText of this page (last edited April 16, 2007) or FindPage with title or text search